/*
 *  Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree. An additional intellectual property rights grant can be found
 *  in the file PATENTS.  All contributing project authors may
 *  be found in the AUTHORS file in the root of the source tree.
 */

#ifndef WEBRTC_MODULES_VIDEO_CODING_SOURCE_ER_TABLES_XOR_H_
#define WEBRTC_MODULES_VIDEO_CODING_SOURCE_ER_TABLES_XOR_H_

// This is a private header for media_opt_util.cc.
// It should not be included by other files.

namespace webrtc {

// Table for average FEC recovery from packet loss, for XOR code.
// From RPL model of random loss.
// Input is the received packet loss (up to 50%), and FEC code parameters
// (up to 24x24):
// i.e., kAvgFECRecoveryXOR[k] where k = code_i*129 + loss_j;
// code_i=1x1,2x1,2x2,..24x24, loss_j = 0,1,..128.

// Maximum number of source packets in off-line model
static const int kMaxNumPackets = 24;
// Max value of loss rates in off-line model
static const int kPacketLossMax = 129;

// Table size for model is: kPacketLossMax * numberOfFecCodes = 38700
// numberOfFecCodes is determined as:
// {(1,1), (2,1), (2,2),...(n,1),..(n,n-1), (n,n)} = n*(n+1)/2
// for n = kMaxNumPackets.
static const int kSizeAvgFECRecoveryXOR = 38700;
static const unsigned char kAvgFECRecoveryXOR[kSizeAvgFECRecoveryXOR] = {
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
14,
15,
16,
17,
18,
19,
20,
20,
21,
22,
23,
24,
24,
25,
26,
27,
27,
28,
29,
30,
30,
31,
32,
33,
33,
34,
35,
35,
36,
37,
37,
38,
38,
39,
40,
40,
41,
41,
42,
43,
43,
44,
44,
45,
45,
46,
46,
47,
47,
48,
48,
49,
49,
50,
50,
51,
51,
52,
52,
52,
53,
53,
54,
54,
54,
55,
55,
55,
56,
56,
56,
57,
57,
57,
58,
58,
58,
59,
59,
59,
59,
60,
60,
60,
60,
60,
61,
61,
61,
61,
61,
62,
62,
62,
62,
62,
62,
62,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
13,
14,
14,
15,
16,
16,
17,
18,
19,
19,
20,
20,
21,
22,
22,
23,
23,
24,
25,
25,
26,
26,
27,
27,
27,
28,
28,
29,
29,
30,
30,
30,
31,
31,
31,
32,
32,
32,
33,
33,
33,
34,
34,
34,
34,
35,
35,
35,
35,
35,
36,
36,
36,
36,
36,
36,
36,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
36,
36,
36,
36,
36,
36,
36,
36,
35,
35,
35,
35,
35,
35,
34,
34,
34,
34,
34,
33,
33,
33,
33,
32,
32,
32,
32,
31,
31,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
19,
20,
21,
22,
23,
24,
25,
25,
26,
27,
28,
29,
30,
30,
31,
32,
33,
34,
34,
35,
36,
37,
37,
38,
39,
39,
40,
41,
41,
42,
43,
43,
44,
45,
45,
46,
46,
47,
48,
48,
49,
49,
50,
50,
51,
51,
52,
52,
53,
53,
54,
54,
55,
55,
56,
56,
56,
57,
57,
58,
58,
58,
59,
59,
59,
60,
60,
60,
60,
61,
61,
61,
61,
62,
62,
62,
62,
63,
63,
63,
63,
63,
63,
63,
64,
64,
64,
64,
64,
64,
64,
64,
64,
64,
64,
64,
64,
64,
64,
64,
64,
64,
64,
64,
64,
63,
63,
63,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
8,
9,
10,
11,
11,
12,
13,
13,
14,
15,
15,
16,
16,
17,
17,
18,
18,
19,
19,
20,
20,
21,
21,
21,
22,
22,
22,
23,
23,
23,
23,
24,
24,
24,
24,
25,
25,
25,
25,
25,
25,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
26,
25,
25,
25,
25,
25,
25,
25,
25,
24,
24,
24,
24,
24,
24,
23,
23,
23,
23,
23,
22,
22,
22,
22,
22,
21,
21,
21,
21,
20,
20,
20,
20,
19,
19,
19,
19,
19,
18,
18,
18,
18,
17,
17,
17,
17,
16,
16,
16,
16,
15,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
15,
16,
17,
18,
19,
20,
20,
21,
22,
23,
24,
24,
25,
26,
27,
27,
28,
29,
29,
30,
31,
31,
32,
33,
33,
34,
34,
35,
36,
36,
37,
37,
38,
38,
39,
39,
40,
40,
41,
41,
41,
42,
42,
43,
43,
43,
44,
44,
44,
45,
45,
45,
45,
46,
46,
46,
46,
47,
47,
47,
47,
47,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
47,
47,
47,
47,
47,
47,
46,
46,
46,
46,
46,
45,
45,
45,
45,
44,
44,
44,
44,
43,
43,
43,
42,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
29,
30,
31,
32,
33,
34,
35,
36,
36,
37,
38,
39,
40,
41,
41,
42,
43,
44,
44,
45,
46,
47,
47,
48,
49,
49,
50,
51,
51,
52,
53,
53,
54,
54,
55,
55,
56,
56,
57,
57,
58,
58,
59,
59,
60,
60,
61,
61,
61,
62,
62,
62,
63,
63,
63,
63,
64,
64,
64,
64,
65,
65,
65,
65,
65,
65,
65,
65,
65,
66,
66,
66,
66,
66,
66,
66,
65,
65,
65,
65,
65,
65,
65,
65,
65,
64,
64,
64,
64,
63,
63,
63,
63,
62,
62,
62,
61,
61,
0,
0,
1,
2,
3,
4,
5,
6,
7,
7,
8,
9,
9,
10,
11,
11,
12,
12,
13,
13,
14,
14,
15,
15,
16,
16,
16,
17,
17,
17,
18,
18,
18,
18,
19,
19,
19,
19,
19,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
19,
19,
19,
19,
19,
19,
19,
18,
18,
18,
18,
18,
18,
17,
17,
17,
17,
17,
16,
16,
16,
16,
16,
15,
15,
15,
15,
15,
14,
14,
14,
14,
14,
13,
13,
13,
13,
13,
12,
12,
12,
12,
11,
11,
11,
11,
11,
10,
10,
10,
10,
10,
9,
9,
9,
9,
9,
8,
8,
8,
8,
8,
7,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
13,
14,
15,
16,
17,
17,
18,
19,
20,
20,
21,
22,
23,
23,
24,
24,
25,
26,
26,
27,
27,
28,
29,
29,
30,
30,
30,
31,
31,
32,
32,
33,
33,
33,
34,
34,
34,
35,
35,
35,
35,
36,
36,
36,
36,
36,
37,
37,
37,
37,
37,
37,
37,
37,
38,
38,
38,
38,
38,
38,
38,
38,
38,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
36,
36,
36,
36,
36,
35,
35,
35,
35,
35,
34,
34,
34,
34,
33,
33,
33,
32,
32,
32,
32,
31,
31,
31,
30,
30,
30,
29,
29,
29,
28,
28,
27,
27,
27,
26,
26,
26,
25,
25,
25,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
21,
22,
23,
24,
25,
26,
27,
27,
28,
29,
30,
31,
31,
32,
33,
34,
34,
35,
36,
36,
37,
38,
38,
39,
40,
40,
41,
42,
42,
43,
43,
44,
44,
45,
45,
46,
46,
47,
47,
48,
48,
48,
49,
49,
50,
50,
50,
51,
51,
51,
51,
52,
52,
52,
52,
53,
53,
53,
53,
53,
53,
53,
53,
54,
54,
54,
54,
54,
54,
54,
54,
54,
54,
54,
53,
53,
53,
53,
53,
53,
53,
53,
52,
52,
52,
52,
52,
51,
51,
51,
51,
50,
50,
50,
49,
49,
49,
48,
48,
48,
47,
47,
47,
46,
46,
45,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
32,
33,
34,
35,
36,
37,
38,
39,
39,
40,
41,
42,
43,
43,
44,
45,
46,
47,
47,
48,
49,
49,
50,
51,
52,
52,
53,
54,
54,
55,
55,
56,
57,
57,
58,
58,
59,
59,
60,
60,
61,
61,
62,
62,
62,
63,
63,
64,
64,
64,
65,
65,
65,
65,
66,
66,
66,
66,
67,
67,
67,
67,
67,
67,
67,
67,
67,
67,
67,
68,
67,
67,
67,
67,
67,
67,
67,
67,
67,
67,
67,
66,
66,
66,
66,
65,
65,
65,
65,
64,
64,
64,
63,
63,
63,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
8,
8,
9,
10,
10,
11,
11,
12,
12,
12,
13,
13,
14,
14,
14,
14,
15,
15,
15,
15,
16,
16,
16,
16,
16,
16,
16,
16,
16,
17,
17,
17,
17,
17,
17,
17,
17,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
15,
15,
15,
15,
15,
15,
15,
14,
14,
14,
14,
14,
14,
13,
13,
13,
13,
13,
12,
12,
12,
12,
12,
11,
11,
11,
11,
11,
10,
10,
10,
10,
10,
10,
9,
9,
9,
9,
9,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
4,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
13,
14,
14,
15,
16,
17,
17,
18,
19,
19,
20,
20,
21,
22,
22,
23,
23,
24,
24,
25,
25,
26,
26,
26,
27,
27,
28,
28,
28,
28,
29,
29,
29,
30,
30,
30,
30,
30,
31,
31,
31,
31,
31,
31,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
31,
31,
31,
31,
31,
31,
31,
31,
30,
30,
30,
30,
30,
30,
29,
29,
29,
29,
28,
28,
28,
28,
27,
27,
27,
27,
26,
26,
26,
26,
25,
25,
25,
25,
24,
24,
24,
23,
23,
23,
22,
22,
22,
21,
21,
21,
21,
20,
20,
20,
19,
19,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
17,
18,
19,
20,
21,
22,
22,
23,
24,
25,
26,
26,
27,
28,
29,
29,
30,
31,
31,
32,
33,
33,
34,
34,
35,
35,
36,
37,
37,
38,
38,
39,
39,
39,
40,
40,
41,
41,
41,
42,
42,
42,
43,
43,
43,
43,
44,
44,
44,
44,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
46,
46,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
44,
44,
44,
44,
44,
43,
43,
43,
43,
42,
42,
42,
42,
41,
41,
41,
40,
40,
40,
39,
39,
39,
38,
38,
38,
37,
37,
36,
36,
36,
35,
35,
34,
34,
34,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
27,
28,
29,
30,
31,
32,
33,
33,
34,
35,
36,
37,
37,
38,
39,
40,
40,
41,
42,
43,
43,
44,
44,
45,
46,
46,
47,
47,
48,
49,
49,
50,
50,
51,
51,
51,
52,
52,
53,
53,
53,
54,
54,
54,
55,
55,
55,
55,
56,
56,
56,
56,
56,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
56,
56,
56,
56,
56,
55,
55,
55,
55,
55,
54,
54,
54,
53,
53,
53,
52,
52,
52,
51,
51,
50,
50,
49,
49,
49,
48,
48,
47,
47,
46,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
32,
33,
34,
35,
36,
37,
38,
39,
39,
40,
41,
42,
43,
44,
44,
45,
46,
47,
47,
48,
49,
50,
50,
51,
52,
52,
53,
54,
54,
55,
56,
56,
57,
57,
58,
58,
59,
60,
60,
61,
61,
61,
62,
62,
63,
63,
64,
64,
64,
65,
65,
65,
66,
66,
66,
66,
67,
67,
67,
67,
67,
67,
68,
68,
68,
68,
68,
68,
68,
68,
68,
68,
68,
68,
68,
68,
68,
67,
67,
67,
67,
67,
67,
66,
66,
66,
66,
65,
65,
65,
64,
64,
64,
63,
63,
0,
0,
1,
2,
3,
4,
5,
5,
6,
7,
7,
8,
8,
9,
9,
10,
10,
11,
11,
11,
12,
12,
12,
13,
13,
13,
13,
13,
13,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
13,
13,
13,
13,
13,
13,
13,
13,
12,
12,
12,
12,
12,
12,
11,
11,
11,
11,
11,
11,
10,
10,
10,
10,
10,
10,
9,
9,
9,
9,
9,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
13,
13,
14,
15,
15,
16,
17,
17,
18,
19,
19,
20,
20,
21,
21,
22,
22,
22,
23,
23,
24,
24,
24,
25,
25,
25,
25,
26,
26,
26,
26,
26,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
26,
26,
26,
26,
26,
26,
25,
25,
25,
25,
25,
24,
24,
24,
24,
23,
23,
23,
23,
22,
22,
22,
22,
21,
21,
21,
21,
20,
20,
20,
19,
19,
19,
18,
18,
18,
18,
17,
17,
17,
16,
16,
16,
15,
15,
15,
15,
14,
14,
14,
13,
13,
13,
13,
12,
12,
12,
11,
11,
11,
11,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
15,
16,
17,
18,
19,
20,
20,
21,
22,
23,
23,
24,
25,
25,
26,
27,
27,
28,
29,
29,
30,
30,
31,
31,
32,
32,
33,
33,
34,
34,
35,
35,
35,
36,
36,
37,
37,
37,
37,
38,
38,
38,
38,
39,
39,
39,
39,
39,
39,
39,
39,
40,
40,
40,
40,
40,
40,
40,
40,
40,
40,
39,
39,
39,
39,
39,
39,
39,
39,
38,
38,
38,
38,
38,
37,
37,
37,
37,
36,
36,
36,
36,
35,
35,
35,
34,
34,
34,
33,
33,
33,
32,
32,
32,
31,
31,
31,
30,
30,
29,
29,
29,
28,
28,
27,
27,
27,
26,
26,
25,
25,
25,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
25,
26,
27,
28,
29,
30,
30,
31,
32,
33,
34,
34,
35,
36,
36,
37,
38,
38,
39,
40,
40,
41,
42,
42,
43,
43,
44,
44,
45,
45,
46,
46,
46,
47,
47,
47,
48,
48,
48,
49,
49,
49,
49,
49,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
49,
49,
49,
49,
49,
48,
48,
48,
48,
47,
47,
47,
47,
46,
46,
45,
45,
45,
44,
44,
43,
43,
43,
42,
42,
41,
41,
40,
40,
39,
39,
38,
38,
37,
37,
36,
36,
35,
35,
34,
33,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
30,
31,
32,
33,
34,
35,
36,
37,
37,
38,
39,
40,
41,
41,
42,
43,
44,
44,
45,
46,
46,
47,
48,
48,
49,
50,
50,
51,
51,
52,
52,
53,
53,
54,
54,
55,
55,
56,
56,
56,
57,
57,
57,
58,
58,
58,
58,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
58,
58,
58,
58,
57,
57,
57,
56,
56,
56,
55,
55,
55,
54,
54,
53,
53,
52,
52,
51,
51,
50,
50,
49,
49,
48,
48,
47,
46,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
39,
40,
41,
42,
43,
44,
45,
46,
46,
47,
48,
49,
50,
50,
51,
52,
53,
53,
54,
55,
55,
56,
57,
57,
58,
58,
59,
60,
60,
61,
61,
62,
62,
63,
63,
63,
64,
64,
64,
65,
65,
65,
66,
66,
66,
66,
66,
66,
67,
67,
67,
67,
67,
67,
67,
67,
67,
67,
66,
66,
66,
66,
66,
66,
65,
65,
65,
64,
64,
64,
63,
63,
63,
62,
62,
61,
61,
60,
60,
59,
59,
58,
57,
57,
56,
55,
55,
54,
0,
0,
1,
2,
3,
4,
5,
5,
6,
6,
7,
8,
8,
9,
9,
9,
10,
10,
10,
11,
11,
11,
11,
11,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
11,
11,
11,
11,
11,
11,
11,
11,
10,
10,
10,
10,
10,
10,
9,
9,
9,
9,
9,
8,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
8,
9,
10,
11,
11,
12,
13,
13,
14,
15,
15,
16,
16,
17,
17,
18,
18,
19,
19,
19,
20,
20,
20,
21,
21,
21,
22,
22,
22,
22,
23,
23,
23,
23,
23,
23,
23,
23,
24,
24,
24,
24,
24,
24,
24,
24,
24,
24,
24,
24,
23,
23,
23,
23,
23,
23,
23,
23,
23,
22,
22,
22,
22,
22,
22,
21,
21,
21,
21,
21,
20,
20,
20,
20,
19,
19,
19,
19,
19,
18,
18,
18,
18,
17,
17,
17,
17,
16,
16,
16,
16,
15,
15,
15,
14,
14,
14,
14,
13,
13,
13,
13,
12,
12,
12,
12,
11,
11,
11,
11,
10,
10,
10,
10,
10,
9,
9,
9,
9,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
14,
15,
16,
17,
18,
19,
19,
20,
21,
22,
22,
23,
24,
24,
25,
25,
26,
27,
27,
28,
28,
29,
29,
30,
30,
30,
31,
31,
32,
32,
32,
32,
33,
33,
33,
33,
34,
34,
34,
34,
34,
34,
34,
34,
35,
35,
35,
35,
35,
34,
34,
34,
34,
34,
34,
34,
34,
34,
33,
33,
33,
33,
33,
32,
32,
32,
32,
31,
31,
31,
31,
30,
30,
30,
29,
29,
29,
28,
28,
28,
27,
27,
26,
26,
26,
25,
25,
25,
24,
24,
23,
23,
23,
22,
22,
21,
21,
21,
20,
20,
19,
19,
19,
18,
18,
17,
17,
17,
16,
16,
15,
15,
15,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
17,
18,
19,
20,
21,
22,
23,
23,
24,
25,
26,
27,
27,
28,
29,
30,
30,
31,
32,
32,
33,
34,
34,
35,
35,
36,
36,
37,
38,
38,
39,
39,
39,
40,
40,
41,
41,
41,
42,
42,
42,
43,
43,
43,
44,
44,
44,
44,
44,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
44,
44,
44,
44,
44,
43,
43,
43,
43,
42,
42,
42,
42,
41,
41,
41,
40,
40,
40,
39,
39,
38,
38,
38,
37,
37,
36,
36,
35,
35,
35,
34,
34,
33,
33,
32,
32,
31,
31,
30,
30,
29,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
28,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
37,
38,
39,
40,
40,
41,
42,
42,
43,
44,
44,
45,
45,
46,
46,
47,
47,
48,
48,
49,
49,
50,
50,
50,
51,
51,
51,
52,
52,
52,
52,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
52,
52,
52,
52,
52,
51,
51,
51,
50,
50,
50,
49,
49,
49,
48,
48,
47,
47,
46,
46,
45,
45,
44,
44,
43,
43,
42,
42,
41,
41,
40,
39,
39,
38,
38,
37,
36,
36,
35,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
38,
39,
40,
40,
41,
42,
43,
44,
45,
45,
46,
47,
48,
48,
49,
50,
50,
51,
52,
52,
53,
54,
54,
55,
55,
56,
56,
57,
57,
58,
58,
59,
59,
59,
60,
60,
60,
61,
61,
61,
61,
62,
62,
62,
62,
62,
62,
62,
62,
63,
63,
63,
63,
62,
62,
62,
62,
62,
62,
62,
62,
61,
61,
61,
61,
60,
60,
60,
59,
59,
58,
58,
58,
57,
57,
56,
56,
55,
55,
54,
54,
53,
52,
52,
51,
51,
50,
49,
49,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
41,
42,
43,
44,
45,
46,
47,
48,
48,
49,
50,
51,
52,
52,
53,
54,
55,
55,
56,
57,
57,
58,
59,
59,
60,
61,
61,
62,
62,
63,
63,
64,
64,
65,
65,
65,
66,
66,
66,
67,
67,
67,
68,
68,
68,
68,
68,
68,
69,
69,
69,
69,
69,
69,
69,
69,
68,
68,
68,
68,
68,
68,
67,
67,
67,
67,
66,
66,
65,
65,
65,
64,
64,
63,
63,
62,
62,
61,
61,
60,
59,
59,
58,
57,
57,
56,
0,
0,
1,
2,
3,
4,
4,
5,
6,
6,
7,
7,
8,
8,
8,
9,
9,
9,
10,
10,
10,
10,
10,
10,
10,
10,
10,
11,
11,
11,
11,
10,
10,
10,
10,
10,
10,
10,
10,
10,
10,
10,
9,
9,
9,
9,
9,
9,
9,
8,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
8,
9,
10,
11,
11,
12,
13,
13,
14,
14,
15,
15,
16,
16,
17,
17,
18,
18,
18,
19,
19,
19,
19,
20,
20,
20,
20,
20,
21,
21,
21,
21,
21,
21,
21,
21,
21,
21,
21,
21,
21,
21,
21,
21,
21,
21,
20,
20,
20,
20,
20,
20,
20,
19,
19,
19,
19,
19,
18,
18,
18,
18,
18,
17,
17,
17,
17,
16,
16,
16,
16,
15,
15,
15,
15,
14,
14,
14,
13,
13,
13,
13,
12,
12,
12,
12,
11,
11,
11,
11,
10,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
12,
13,
14,
15,
16,
16,
17,
18,
19,
19,
20,
20,
21,
22,
22,
23,
23,
24,
24,
25,
25,
26,
26,
27,
27,
27,
28,
28,
28,
29,
29,
29,
29,
30,
30,
30,
30,
30,
30,
31,
31,
31,
31,
31,
31,
31,
31,
31,
31,
31,
31,
31,
30,
30,
30,
30,
30,
30,
30,
29,
29,
29,
29,
29,
28,
28,
28,
28,
27,
27,
27,
27,
26,
26,
26,
25,
25,
25,
24,
24,
24,
23,
23,
23,
22,
22,
22,
21,
21,
21,
20,
20,
20,
19,
19,
18,
18,
18,
17,
17,
17,
16,
16,
16,
15,
15,
15,
14,
14,
14,
13,
13,
13,
12,
12,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
19,
20,
21,
22,
23,
24,
24,
25,
26,
27,
27,
28,
29,
29,
30,
31,
31,
32,
32,
33,
33,
34,
34,
35,
35,
36,
36,
37,
37,
37,
38,
38,
38,
38,
39,
39,
39,
39,
39,
39,
39,
40,
40,
40,
40,
40,
40,
40,
40,
39,
39,
39,
39,
39,
39,
39,
38,
38,
38,
38,
37,
37,
37,
37,
36,
36,
36,
35,
35,
35,
34,
34,
33,
33,
33,
32,
32,
31,
31,
30,
30,
29,
29,
29,
28,
28,
27,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
20,
19,
19,
18,
18,
17,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
26,
27,
28,
29,
30,
31,
31,
32,
33,
34,
34,
35,
36,
37,
37,
38,
39,
39,
40,
40,
41,
41,
42,
43,
43,
43,
44,
44,
45,
45,
45,
46,
46,
46,
47,
47,
47,
47,
47,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
47,
47,
47,
47,
47,
46,
46,
46,
46,
45,
45,
45,
44,
44,
44,
43,
43,
42,
42,
41,
41,
41,
40,
40,
39,
39,
38,
37,
37,
36,
36,
35,
35,
34,
34,
33,
32,
32,
31,
31,
30,
30,
29,
28,
28,
27,
27,
26,
25,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
30,
31,
32,
33,
34,
35,
36,
36,
37,
38,
39,
40,
40,
41,
42,
42,
43,
44,
45,
45,
46,
46,
47,
48,
48,
49,
49,
50,
50,
51,
51,
52,
52,
53,
53,
53,
54,
54,
54,
55,
55,
55,
55,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
55,
55,
55,
55,
54,
54,
54,
54,
53,
53,
53,
52,
52,
51,
51,
50,
50,
50,
49,
49,
48,
48,
47,
46,
46,
45,
45,
44,
44,
43,
43,
42,
41,
41,
40,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
35,
36,
37,
38,
39,
40,
41,
42,
42,
43,
44,
45,
46,
46,
47,
48,
49,
49,
50,
51,
51,
52,
53,
53,
54,
55,
55,
56,
56,
57,
57,
58,
58,
59,
59,
60,
60,
60,
61,
61,
61,
62,
62,
62,
62,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
62,
62,
62,
62,
61,
61,
61,
60,
60,
60,
59,
59,
58,
58,
57,
57,
56,
56,
55,
55,
54,
54,
53,
52,
52,
51,
50,
50,
49,
48,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
46,
47,
48,
49,
50,
51,
52,
52,
53,
54,
55,
56,
56,
57,
58,
59,
59,
60,
61,
61,
62,
63,
63,
64,
65,
65,
66,
66,
67,
67,
68,
68,
68,
69,
69,
69,
70,
70,
70,
71,
71,
71,
71,
71,
71,
71,
71,
71,
71,
71,
71,
71,
71,
71,
71,
71,
70,
70,
70,
69,
69,
69,
68,
68,
67,
67,
66,
66,
65,
65,
64,
64,
63,
62,
62,
61,
60,
59,
59,
58,
57,
0,
0,
1,
2,
3,
4,
4,
5,
6,
6,
6,
7,
7,
8,
8,
8,
8,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
8,
8,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
7,
8,
9,
9,
10,
11,
11,
12,
12,
13,
13,
14,
14,
15,
15,
16,
16,
16,
16,
17,
17,
17,
17,
18,
18,
18,
18,
18,
18,
19,
19,
19,
19,
19,
19,
19,
19,
19,
19,
19,
19,
19,
18,
18,
18,
18,
18,
18,
18,
18,
18,
17,
17,
17,
17,
17,
17,
16,
16,
16,
16,
16,
15,
15,
15,
15,
15,
14,
14,
14,
14,
13,
13,
13,
13,
12,
12,
12,
12,
12,
11,
11,
11,
11,
10,
10,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
13,
14,
14,
15,
16,
16,
17,
18,
18,
19,
20,
20,
21,
21,
22,
22,
23,
23,
24,
24,
24,
25,
25,
25,
26,
26,
26,
26,
27,
27,
27,
27,
27,
28,
28,
28,
28,
28,
28,
28,
28,
28,
28,
28,
28,
28,
28,
28,
28,
28,
27,
27,
27,
27,
27,
27,
27,
26,
26,
26,
26,
26,
25,
25,
25,
25,
24,
24,
24,
24,
23,
23,
23,
22,
22,
22,
22,
21,
21,
21,
20,
20,
20,
19,
19,
19,
18,
18,
18,
17,
17,
17,
17,
16,
16,
16,
15,
15,
15,
14,
14,
14,
13,
13,
13,
13,
12,
12,
12,
11,
11,
11,
11,
10,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
15,
16,
17,
18,
19,
20,
20,
21,
22,
23,
23,
24,
25,
25,
26,
27,
27,
28,
28,
29,
29,
30,
30,
31,
31,
32,
32,
33,
33,
33,
34,
34,
34,
34,
35,
35,
35,
35,
36,
36,
36,
36,
36,
36,
36,
36,
36,
36,
36,
36,
36,
36,
36,
36,
36,
35,
35,
35,
35,
35,
35,
34,
34,
34,
34,
33,
33,
33,
32,
32,
32,
31,
31,
31,
30,
30,
30,
29,
29,
29,
28,
28,
27,
27,
27,
26,
26,
25,
25,
24,
24,
24,
23,
23,
22,
22,
21,
21,
21,
20,
20,
19,
19,
18,
18,
18,
17,
17,
16,
16,
16,
15,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
22,
23,
24,
25,
26,
27,
27,
28,
29,
30,
31,
31,
32,
33,
33,
34,
35,
35,
36,
37,
37,
38,
38,
39,
39,
40,
40,
40,
41,
41,
42,
42,
42,
42,
43,
43,
43,
43,
44,
44,
44,
44,
44,
44,
44,
44,
44,
44,
44,
44,
44,
44,
43,
43,
43,
43,
43,
42,
42,
42,
42,
41,
41,
41,
40,
40,
40,
39,
39,
38,
38,
37,
37,
37,
36,
36,
35,
35,
34,
34,
33,
32,
32,
31,
31,
30,
30,
29,
29,
28,
28,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
38,
38,
39,
40,
41,
41,
42,
43,
43,
44,
44,
45,
45,
46,
47,
47,
48,
48,
48,
49,
49,
50,
50,
50,
51,
51,
51,
51,
52,
52,
52,
52,
52,
52,
52,
52,
52,
52,
52,
52,
52,
52,
52,
52,
52,
52,
51,
51,
51,
51,
50,
50,
50,
49,
49,
49,
48,
48,
48,
47,
47,
46,
46,
45,
45,
44,
44,
43,
43,
42,
42,
41,
40,
40,
39,
39,
38,
38,
37,
36,
36,
35,
34,
34,
33,
33,
32,
31,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
33,
34,
35,
36,
37,
38,
39,
40,
40,
41,
42,
43,
44,
44,
45,
46,
46,
47,
48,
49,
49,
50,
50,
51,
52,
52,
53,
53,
54,
54,
55,
55,
56,
56,
56,
57,
57,
57,
58,
58,
58,
58,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
59,
58,
58,
58,
58,
57,
57,
57,
56,
56,
56,
55,
55,
54,
54,
53,
53,
52,
52,
51,
51,
50,
49,
49,
48,
48,
47,
46,
46,
45,
44,
44,
43,
42,
42,
41,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
37,
38,
39,
40,
41,
42,
43,
44,
44,
45,
46,
47,
48,
49,
49,
50,
51,
52,
52,
53,
54,
54,
55,
56,
56,
57,
58,
58,
59,
59,
60,
60,
61,
61,
62,
62,
63,
63,
63,
64,
64,
64,
64,
65,
65,
65,
65,
65,
66,
66,
66,
66,
66,
66,
66,
66,
66,
65,
65,
65,
65,
65,
65,
64,
64,
64,
63,
63,
63,
62,
62,
61,
61,
60,
60,
59,
59,
58,
58,
57,
56,
56,
55,
54,
54,
53,
52,
52,
51,
50,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
44,
45,
46,
47,
48,
49,
50,
51,
51,
52,
53,
54,
55,
55,
56,
57,
58,
58,
59,
60,
61,
61,
62,
62,
63,
64,
64,
65,
65,
66,
66,
67,
67,
68,
68,
68,
69,
69,
69,
70,
70,
70,
70,
70,
71,
71,
71,
71,
71,
71,
71,
71,
71,
71,
71,
70,
70,
70,
70,
70,
69,
69,
69,
68,
68,
67,
67,
66,
66,
65,
65,
64,
64,
63,
63,
62,
61,
61,
60,
59,
58,
58,
57,
0,
0,
1,
2,
3,
4,
4,
5,
5,
6,
6,
7,
7,
7,
7,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
7,
8,
9,
9,
10,
11,
11,
12,
12,
13,
13,
14,
14,
14,
15,
15,
15,
16,
16,
16,
16,
16,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
16,
16,
16,
16,
16,
16,
16,
15,
15,
15,
15,
15,
14,
14,
14,
14,
14,
13,
13,
13,
13,
12,
12,
12,
12,
11,
11,
11,
11,
10,
10,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
13,
14,
14,
15,
16,
16,
17,
18,
18,
19,
19,
20,
20,
21,
21,
22,
22,
22,
23,
23,
23,
24,
24,
24,
24,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
24,
24,
24,
24,
24,
23,
23,
23,
23,
22,
22,
22,
22,
21,
21,
21,
20,
20,
20,
19,
19,
19,
19,
18,
18,
18,
17,
17,
17,
16,
16,
16,
15,
15,
15,
14,
14,
14,
13,
13,
13,
12,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
15,
16,
17,
18,
19,
19,
20,
21,
22,
22,
23,
24,
24,
25,
26,
26,
27,
27,
28,
28,
29,
29,
29,
30,
30,
30,
31,
31,
31,
31,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
31,
31,
31,
31,
30,
30,
30,
30,
29,
29,
29,
28,
28,
28,
27,
27,
27,
26,
26,
25,
25,
25,
24,
24,
23,
23,
22,
22,
22,
21,
21,
20,
20,
19,
19,
19,
18,
18,
17,
17,
16,
16,
16,
15,
15,
14,
14,
14,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
20,
21,
22,
23,
24,
25,
25,
26,
27,
28,
28,
29,
30,
30,
31,
32,
32,
33,
34,
34,
35,
35,
36,
36,
37,
37,
37,
38,
38,
39,
39,
39,
39,
40,
40,
40,
40,
41,
41,
41,
41,
41,
41,
41,
41,
41,
41,
41,
41,
41,
41,
40,
40,
40,
40,
40,
40,
39,
39,
39,
38,
38,
38,
38,
37,
37,
36,
36,
36,
35,
35,
34,
34,
34,
33,
33,
32,
32,
31,
31,
30,
30,
29,
29,
28,
28,
27,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
18,
17,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
25,
26,
27,
28,
29,
30,
31,
31,
32,
33,
34,
34,
35,
36,
36,
37,
38,
38,
39,
40,
40,
41,
41,
42,
42,
43,
43,
44,
44,
45,
45,
45,
46,
46,
46,
46,
47,
47,
47,
47,
47,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
47,
47,
47,
47,
47,
47,
46,
46,
46,
45,
45,
45,
44,
44,
44,
43,
43,
43,
42,
42,
41,
41,
40,
40,
39,
39,
39,
38,
38,
37,
36,
36,
35,
35,
34,
34,
33,
33,
32,
32,
31,
31,
30,
29,
29,
28,
28,
27,
27,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
29,
30,
31,
32,
33,
34,
35,
35,
36,
37,
38,
38,
39,
40,
41,
41,
42,
43,
43,
44,
45,
45,
46,
47,
47,
48,
48,
49,
49,
50,
50,
50,
51,
51,
52,
52,
52,
53,
53,
53,
53,
53,
54,
54,
54,
54,
54,
54,
54,
54,
54,
54,
54,
54,
54,
54,
54,
54,
54,
53,
53,
53,
53,
52,
52,
52,
51,
51,
51,
50,
50,
50,
49,
49,
48,
48,
47,
47,
46,
46,
45,
45,
44,
44,
43,
42,
42,
41,
41,
40,
39,
39,
38,
38,
37,
36,
36,
35,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
38,
39,
40,
41,
41,
42,
43,
44,
45,
45,
46,
47,
48,
48,
49,
50,
50,
51,
52,
52,
53,
53,
54,
55,
55,
56,
56,
57,
57,
57,
58,
58,
59,
59,
59,
60,
60,
60,
60,
61,
61,
61,
61,
61,
61,
61,
61,
61,
61,
61,
61,
61,
61,
61,
61,
61,
60,
60,
60,
60,
59,
59,
59,
58,
58,
57,
57,
57,
56,
56,
55,
55,
54,
53,
53,
52,
52,
51,
51,
50,
49,
49,
48,
47,
47,
46,
45,
44,
44,
0,
1,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
42,
43,
44,
45,
46,
47,
48,
48,
49,
50,
51,
52,
52,
53,
54,
54,
55,
56,
56,
57,
58,
58,
59,
59,
60,
60,
60,
61,
61,
62,
62,
62,
63,
63,
63,
63,
63,
63,
64,
64,
64,
64,
64,
64,
63,
63,
63,
63,
63,
62,
62,
62,
62,
61,
61,
60,
60,
59,
59,
58,
58,
57,
57,
56,
55,
55,
54,
53,
53,
52,
51,
50,
50,
49,
48,
47,
46,
45,
44,
44,
43,
42,
41,
40,
39,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
47,
48,
49,
50,
51,
52,
53,
54,
54,
55,
56,
57,
58,
59,
59,
60,
61,
62,
62,
63,
64,
64,
65,
65,
66,
67,
67,
68,
68,
69,
69,
70,
70,
71,
71,
71,
72,
72,
72,
72,
73,
73,
73,
73,
73,
73,
73,
73,
73,
73,
73,
73,
73,
73,
72,
72,
72,
72,
71,
71,
70,
70,
70,
69,
69,
68,
68,
67,
66,
66,
65,
64,
64,
63,
62,
61,
61,
60,
59,
58,
0,
0,
1,
2,
3,
4,
4,
5,
5,
6,
6,
6,
7,
7,
7,
7,
7,
7,
8,
8,
8,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
7,
8,
9,
9,
10,
10,
11,
11,
12,
12,
13,
13,
13,
14,
14,
14,
15,
15,
15,
15,
15,
15,
15,
16,
16,
16,
16,
16,
16,
16,
16,
15,
15,
15,
15,
15,
15,
15,
15,
14,
14,
14,
14,
14,
13,
13,
13,
13,
13,
12,
12,
12,
12,
11,
11,
11,
11,
11,
10,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
13,
13,
14,
15,
15,
16,
17,
17,
18,
18,
19,
19,
20,
20,
20,
21,
21,
21,
22,
22,
22,
22,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
22,
22,
22,
22,
22,
22,
21,
21,
21,
21,
20,
20,
20,
19,
19,
19,
19,
18,
18,
18,
17,
17,
17,
16,
16,
16,
15,
15,
15,
14,
14,
14,
13,
13,
13,
12,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
14,
15,
16,
17,
18,
18,
19,
20,
21,
21,
22,
23,
23,
24,
24,
25,
25,
26,
26,
27,
27,
28,
28,
28,
29,
29,
29,
29,
30,
30,
30,
30,
30,
30,
31,
31,
31,
31,
31,
31,
31,
31,
30,
30,
30,
30,
30,
30,
30,
29,
29,
29,
29,
28,
28,
28,
28,
27,
27,
27,
26,
26,
26,
25,
25,
24,
24,
24,
23,
23,
22,
22,
22,
21,
21,
20,
20,
20,
19,
19,
18,
18,
18,
17,
17,
16,
16,
16,
15,
15,
14,
14,
14,
13,
13,
13,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
7,
7,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
16,
17,
18,
19,
20,
21,
21,
22,
23,
24,
24,
25,
26,
26,
27,
28,
28,
29,
30,
30,
31,
31,
32,
32,
33,
33,
34,
34,
34,
35,
35,
36,
36,
36,
36,
37,
37,
37,
37,
37,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
37,
37,
37,
37,
37,
36,
36,
36,
36,
35,
35,
35,
35,
34,
34,
34,
33,
33,
32,
32,
32,
31,
31,
30,
30,
30,
29,
29,
28,
28,
27,
27,
26,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
21,
20,
20,
19,
19,
18,
18,
17,
17,
17,
16,
16,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
25,
26,
27,
28,
29,
30,
30,
31,
32,
33,
33,
34,
35,
35,
36,
37,
37,
38,
38,
39,
39,
40,
40,
41,
41,
42,
42,
42,
43,
43,
43,
43,
44,
44,
44,
44,
44,
44,
45,
45,
45,
45,
45,
44,
44,
44,
44,
44,
44,
44,
44,
43,
43,
43,
42,
42,
42,
42,
41,
41,
40,
40,
40,
39,
39,
38,
38,
37,
37,
36,
36,
35,
35,
34,
34,
33,
33,
32,
31,
31,
30,
30,
29,
29,
28,
27,
27,
26,
26,
25,
25,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
28,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
38,
38,
39,
40,
40,
41,
42,
42,
43,
44,
44,
45,
45,
46,
46,
47,
47,
47,
48,
48,
48,
49,
49,
49,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
49,
49,
49,
49,
48,
48,
48,
47,
47,
47,
46,
46,
45,
45,
44,
44,
43,
43,
42,
42,
41,
40,
40,
39,
39,
38,
37,
37,
36,
35,
35,
34,
33,
33,
32,
31,
31,
30,
29,
29,
28,
27,
27,
26,
25,
25,
24,
23,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
30,
31,
32,
33,
34,
35,
36,
37,
37,
38,
39,
40,
41,
41,
42,
43,
44,
44,
45,
46,
46,
47,
48,
48,
49,
49,
50,
50,
51,
51,
52,
52,
53,
53,
54,
54,
54,
55,
55,
55,
56,
56,
56,
56,
56,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
56,
56,
56,
56,
56,
56,
55,
55,
55,
54,
54,
54,
53,
53,
53,
52,
52,
51,
51,
50,
50,
49,
49,
48,
48,
47,
47,
46,
45,
45,
44,
43,
43,
42,
42,
41,
40,
40,
39,
38,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
39,
40,
41,
42,
43,
44,
45,
45,
46,
47,
48,
49,
49,
50,
51,
52,
52,
53,
54,
54,
55,
55,
56,
56,
57,
57,
58,
58,
59,
59,
59,
60,
60,
60,
61,
61,
61,
61,
61,
61,
62,
62,
62,
62,
62,
61,
61,
61,
61,
61,
61,
60,
60,
60,
60,
59,
59,
58,
58,
57,
57,
57,
56,
55,
55,
54,
54,
53,
52,
52,
51,
50,
50,
49,
48,
47,
47,
46,
45,
44,
44,
43,
42,
41,
40,
39,
39,
38,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
43,
44,
45,
46,
47,
48,
49,
50,
50,
51,
52,
53,
54,
54,
55,
56,
57,
57,
58,
59,
59,
60,
61,
61,
62,
62,
63,
63,
64,
64,
65,
65,
65,
66,
66,
66,
67,
67,
67,
67,
67,
68,
68,
68,
68,
68,
68,
68,
67,
67,
67,
67,
67,
67,
66,
66,
66,
65,
65,
64,
64,
64,
63,
63,
62,
61,
61,
60,
60,
59,
58,
57,
57,
56,
55,
54,
54,
53,
52,
51,
50,
49,
49,
48,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
48,
49,
50,
51,
52,
53,
54,
55,
55,
56,
57,
58,
59,
59,
60,
61,
62,
62,
63,
64,
64,
65,
66,
66,
67,
67,
68,
68,
69,
69,
70,
70,
70,
71,
71,
71,
72,
72,
72,
72,
72,
72,
73,
73,
73,
73,
73,
72,
72,
72,
72,
72,
72,
71,
71,
71,
70,
70,
70,
69,
69,
68,
68,
67,
66,
66,
65,
65,
64,
63,
62,
62,
61,
60,
59,
58,
58,
57,
56,
0,
0,
1,
2,
3,
3,
4,
5,
5,
5,
6,
6,
6,
6,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
8,
8,
9,
9,
10,
10,
11,
11,
12,
12,
12,
13,
13,
13,
13,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
13,
13,
13,
13,
13,
13,
12,
12,
12,
12,
12,
11,
11,
11,
11,
10,
10,
10,
10,
10,
9,
9,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
9,
10,
11,
12,
12,
13,
14,
14,
15,
16,
16,
17,
17,
18,
18,
18,
19,
19,
20,
20,
20,
20,
21,
21,
21,
21,
21,
21,
21,
22,
22,
22,
22,
22,
22,
22,
21,
21,
21,
21,
21,
21,
21,
21,
20,
20,
20,
20,
20,
19,
19,
19,
19,
18,
18,
18,
17,
17,
17,
17,
16,
16,
16,
15,
15,
15,
14,
14,
14,
14,
13,
13,
13,
12,
12,
12,
11,
11,
11,
11,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
13,
14,
15,
16,
17,
17,
18,
19,
19,
20,
21,
21,
22,
22,
23,
23,
24,
24,
25,
25,
26,
26,
26,
27,
27,
27,
28,
28,
28,
28,
28,
28,
29,
29,
29,
29,
29,
29,
29,
29,
29,
29,
28,
28,
28,
28,
28,
28,
28,
27,
27,
27,
27,
26,
26,
26,
26,
25,
25,
25,
24,
24,
24,
23,
23,
23,
22,
22,
21,
21,
21,
20,
20,
20,
19,
19,
18,
18,
18,
17,
17,
17,
16,
16,
15,
15,
15,
14,
14,
14,
13,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
16,
17,
18,
19,
20,
21,
21,
22,
23,
24,
24,
25,
26,
26,
27,
27,
28,
29,
29,
30,
30,
31,
31,
32,
32,
32,
33,
33,
33,
34,
34,
34,
34,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
34,
34,
34,
34,
33,
33,
33,
33,
32,
32,
32,
31,
31,
31,
30,
30,
29,
29,
29,
28,
28,
27,
27,
27,
26,
26,
25,
25,
24,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
20,
19,
19,
18,
18,
17,
17,
17,
16,
16,
15,
15,
15,
14,
14,
13,
13,
13,
12,
12,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
21,
22,
23,
24,
25,
26,
26,
27,
28,
29,
29,
30,
31,
32,
32,
33,
33,
34,
35,
35,
36,
36,
37,
37,
38,
38,
38,
39,
39,
40,
40,
40,
40,
41,
41,
41,
41,
41,
41,
41,
41,
42,
42,
42,
41,
41,
41,
41,
41,
41,
41,
41,
40,
40,
40,
40,
39,
39,
39,
39,
38,
38,
38,
37,
37,
36,
36,
36,
35,
35,
34,
34,
33,
33,
32,
32,
31,
31,
30,
30,
29,
29,
28,
28,
27,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
18,
17,
17,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
25,
26,
27,
28,
29,
30,
31,
31,
32,
33,
34,
34,
35,
36,
37,
37,
38,
39,
39,
40,
40,
41,
42,
42,
43,
43,
44,
44,
44,
45,
45,
45,
46,
46,
46,
47,
47,
47,
47,
47,
47,
47,
47,
48,
48,
48,
47,
47,
47,
47,
47,
47,
47,
47,
46,
46,
46,
45,
45,
45,
44,
44,
44,
43,
43,
42,
42,
42,
41,
41,
40,
40,
39,
39,
38,
37,
37,
36,
36,
35,
35,
34,
33,
33,
32,
32,
31,
30,
30,
29,
29,
28,
27,
27,
26,
26,
25,
24,
24,
23,
23,
22,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
28,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
38,
38,
39,
40,
41,
41,
42,
43,
43,
44,
44,
45,
46,
46,
47,
47,
48,
48,
49,
49,
50,
50,
50,
51,
51,
51,
52,
52,
52,
52,
52,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
52,
52,
52,
52,
52,
51,
51,
51,
51,
50,
50,
50,
49,
49,
48,
48,
48,
47,
47,
46,
46,
45,
45,
44,
44,
43,
42,
42,
41,
41,
40,
40,
39,
38,
38,
37,
37,
36,
35,
35,
34,
34,
33,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
36,
37,
38,
39,
40,
41,
42,
42,
43,
44,
45,
45,
46,
47,
48,
48,
49,
50,
50,
51,
51,
52,
52,
53,
53,
54,
54,
55,
55,
56,
56,
56,
56,
57,
57,
57,
57,
57,
58,
58,
58,
58,
58,
58,
58,
58,
57,
57,
57,
57,
57,
56,
56,
56,
55,
55,
55,
54,
54,
53,
53,
52,
52,
51,
51,
50,
50,
49,
48,
48,
47,
46,
46,
45,
44,
43,
43,
42,
41,
40,
40,
39,
38,
37,
37,
36,
35,
34,
34,
33,
32,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
41,
42,
43,
44,
45,
46,
47,
47,
48,
49,
50,
51,
51,
52,
53,
53,
54,
55,
55,
56,
57,
57,
58,
58,
59,
59,
60,
60,
60,
61,
61,
62,
62,
62,
62,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
63,
62,
62,
62,
61,
61,
61,
60,
60,
60,
59,
59,
58,
58,
57,
56,
56,
55,
54,
54,
53,
52,
52,
51,
50,
49,
49,
48,
47,
46,
45,
45,
44,
43,
42,
41,
40,
39,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
45,
46,
47,
48,
49,
50,
51,
52,
52,
53,
54,
55,
56,
56,
57,
58,
58,
59,
60,
60,
61,
62,
62,
63,
63,
64,
64,
65,
65,
66,
66,
67,
67,
67,
68,
68,
68,
68,
68,
69,
69,
69,
69,
69,
69,
69,
69,
69,
69,
68,
68,
68,
68,
67,
67,
67,
66,
66,
65,
65,
64,
64,
63,
63,
62,
61,
61,
60,
59,
59,
58,
57,
56,
56,
55,
54,
53,
52,
51,
50,
50,
49,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
47,
48,
49,
50,
51,
52,
53,
54,
54,
55,
56,
57,
58,
58,
59,
60,
61,
62,
62,
63,
64,
64,
65,
66,
66,
67,
67,
68,
68,
69,
69,
70,
70,
71,
71,
72,
72,
72,
73,
73,
73,
73,
73,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
73,
73,
73,
73,
73,
72,
72,
72,
71,
71,
70,
70,
69,
69,
68,
67,
67,
66,
66,
65,
64,
63,
63,
62,
61,
60,
59,
0,
0,
1,
2,
3,
3,
4,
4,
5,
5,
5,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
5,
6,
7,
7,
8,
9,
9,
9,
10,
10,
11,
11,
11,
12,
12,
12,
12,
12,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
12,
12,
12,
12,
12,
12,
12,
11,
11,
11,
11,
11,
11,
10,
10,
10,
10,
10,
9,
9,
9,
9,
9,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
9,
10,
11,
12,
12,
13,
14,
14,
15,
15,
16,
16,
17,
17,
17,
18,
18,
18,
19,
19,
19,
19,
19,
19,
20,
20,
20,
20,
20,
20,
20,
20,
19,
19,
19,
19,
19,
19,
19,
18,
18,
18,
18,
18,
17,
17,
17,
17,
16,
16,
16,
15,
15,
15,
14,
14,
14,
14,
13,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
13,
14,
15,
16,
17,
17,
18,
19,
19,
20,
20,
21,
22,
22,
23,
23,
23,
24,
24,
25,
25,
25,
25,
26,
26,
26,
26,
26,
26,
26,
26,
27,
27,
26,
26,
26,
26,
26,
26,
26,
26,
26,
25,
25,
25,
25,
24,
24,
24,
23,
23,
23,
23,
22,
22,
21,
21,
21,
20,
20,
20,
19,
19,
18,
18,
18,
17,
17,
16,
16,
16,
15,
15,
15,
14,
14,
13,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
16,
17,
18,
19,
20,
21,
21,
22,
23,
23,
24,
25,
25,
26,
27,
27,
28,
28,
29,
29,
30,
30,
30,
31,
31,
31,
32,
32,
32,
32,
32,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
32,
32,
32,
32,
32,
31,
31,
31,
30,
30,
30,
30,
29,
29,
28,
28,
28,
27,
27,
26,
26,
26,
25,
25,
24,
24,
23,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
18,
18,
17,
17,
16,
16,
15,
15,
15,
14,
14,
13,
13,
13,
12,
12,
12,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
22,
23,
24,
25,
26,
27,
27,
28,
29,
30,
30,
31,
31,
32,
33,
33,
34,
34,
35,
35,
36,
36,
36,
37,
37,
37,
38,
38,
38,
38,
38,
38,
38,
39,
39,
39,
39,
38,
38,
38,
38,
38,
38,
38,
37,
37,
37,
37,
36,
36,
36,
35,
35,
34,
34,
33,
33,
33,
32,
32,
31,
31,
30,
30,
29,
28,
28,
27,
27,
26,
26,
25,
25,
24,
24,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
11,
10,
10,
10,
9,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
27,
28,
29,
30,
31,
32,
32,
33,
34,
34,
35,
36,
36,
37,
38,
38,
39,
39,
40,
40,
41,
41,
42,
42,
42,
42,
43,
43,
43,
43,
44,
44,
44,
44,
44,
44,
44,
44,
44,
43,
43,
43,
43,
43,
42,
42,
42,
41,
41,
41,
40,
40,
39,
39,
39,
38,
38,
37,
36,
36,
35,
35,
34,
34,
33,
32,
32,
31,
30,
30,
29,
29,
28,
27,
27,
26,
25,
25,
24,
23,
23,
22,
21,
21,
20,
20,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
30,
31,
32,
33,
34,
35,
35,
36,
37,
38,
39,
39,
40,
41,
41,
42,
43,
43,
44,
45,
45,
46,
46,
47,
47,
48,
48,
48,
49,
49,
49,
50,
50,
50,
50,
50,
51,
51,
51,
51,
51,
51,
51,
51,
51,
51,
50,
50,
50,
50,
50,
49,
49,
49,
49,
48,
48,
47,
47,
47,
46,
46,
45,
45,
44,
44,
43,
42,
42,
41,
41,
40,
39,
39,
38,
37,
37,
36,
35,
35,
34,
33,
33,
32,
31,
31,
30,
29,
29,
28,
27,
27,
26,
25,
25,
24,
23,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
33,
34,
35,
36,
37,
38,
39,
39,
40,
41,
42,
43,
43,
44,
45,
45,
46,
47,
47,
48,
49,
49,
50,
50,
51,
51,
52,
52,
52,
53,
53,
53,
54,
54,
54,
54,
55,
55,
55,
55,
55,
55,
55,
55,
55,
55,
55,
55,
54,
54,
54,
54,
53,
53,
53,
52,
52,
52,
51,
51,
50,
50,
49,
49,
48,
48,
47,
46,
46,
45,
44,
44,
43,
42,
42,
41,
40,
40,
39,
38,
37,
37,
36,
35,
34,
34,
33,
32,
31,
31,
30,
29,
28,
28,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
36,
37,
38,
39,
40,
41,
42,
43,
43,
44,
45,
46,
46,
47,
48,
49,
49,
50,
51,
51,
52,
53,
53,
54,
54,
55,
55,
56,
56,
57,
57,
58,
58,
58,
59,
59,
59,
59,
60,
60,
60,
60,
60,
60,
60,
60,
60,
60,
60,
60,
60,
59,
59,
59,
59,
58,
58,
58,
57,
57,
56,
56,
55,
55,
54,
54,
53,
53,
52,
51,
51,
50,
49,
49,
48,
47,
47,
46,
45,
44,
43,
43,
42,
41,
40,
39,
39,
38,
37,
36,
35,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
41,
42,
43,
44,
45,
46,
47,
48,
48,
49,
50,
51,
52,
52,
53,
54,
54,
55,
56,
57,
57,
58,
58,
59,
60,
60,
61,
61,
62,
62,
62,
63,
63,
63,
64,
64,
64,
64,
65,
65,
65,
65,
65,
65,
65,
65,
65,
65,
65,
65,
64,
64,
64,
64,
63,
63,
63,
62,
62,
61,
61,
60,
60,
59,
59,
58,
57,
57,
56,
55,
55,
54,
53,
52,
52,
51,
50,
49,
48,
47,
47,
46,
45,
44,
43,
42,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
48,
49,
50,
51,
52,
53,
54,
54,
55,
56,
57,
58,
58,
59,
60,
61,
61,
62,
63,
63,
64,
64,
65,
65,
66,
66,
67,
67,
68,
68,
69,
69,
69,
69,
70,
70,
70,
70,
70,
70,
70,
70,
70,
70,
70,
70,
70,
70,
69,
69,
69,
68,
68,
68,
67,
67,
66,
66,
65,
65,
64,
63,
63,
62,
61,
60,
60,
59,
58,
57,
56,
55,
55,
54,
53,
52,
51,
50,
49,
0,
1,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
49,
50,
51,
51,
52,
53,
54,
55,
56,
57,
58,
58,
59,
60,
61,
62,
62,
63,
64,
64,
65,
66,
66,
67,
68,
68,
69,
69,
70,
70,
71,
71,
72,
72,
72,
73,
73,
73,
73,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
73,
73,
73,
73,
72,
72,
72,
71,
71,
70,
70,
69,
69,
68,
67,
67,
66,
65,
64,
64,
63,
62,
61,
60,
59,
58,
57,
56,
55,
54,
0,
0,
1,
2,
3,
3,
4,
4,
5,
5,
5,
5,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
8,
8,
9,
9,
10,
10,
10,
11,
11,
11,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
11,
11,
11,
11,
11,
10,
10,
10,
10,
10,
9,
9,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
9,
10,
11,
11,
12,
13,
13,
14,
14,
15,
15,
16,
16,
16,
17,
17,
17,
17,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
17,
17,
17,
17,
17,
16,
16,
16,
16,
15,
15,
15,
14,
14,
14,
14,
13,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
12,
13,
14,
15,
15,
16,
17,
17,
18,
19,
19,
20,
20,
21,
21,
21,
22,
22,
22,
23,
23,
23,
23,
23,
24,
24,
24,
24,
24,
24,
24,
24,
24,
24,
23,
23,
23,
23,
23,
23,
22,
22,
22,
22,
21,
21,
21,
20,
20,
20,
19,
19,
19,
18,
18,
18,
17,
17,
16,
16,
16,
15,
15,
14,
14,
14,
13,
13,
13,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
16,
17,
18,
19,
20,
20,
21,
22,
22,
23,
24,
24,
25,
25,
26,
26,
26,
27,
27,
28,
28,
28,
28,
28,
29,
29,
29,
29,
29,
29,
29,
29,
29,
29,
28,
28,
28,
28,
28,
27,
27,
27,
27,
26,
26,
26,
25,
25,
24,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
21,
22,
23,
24,
25,
25,
26,
27,
28,
28,
29,
29,
30,
31,
31,
32,
32,
33,
33,
33,
34,
34,
34,
35,
35,
35,
35,
36,
36,
36,
36,
36,
36,
36,
36,
36,
36,
35,
35,
35,
35,
35,
34,
34,
34,
33,
33,
33,
32,
32,
31,
31,
31,
30,
30,
29,
29,
28,
28,
27,
27,
26,
26,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
24,
25,
26,
27,
28,
29,
29,
30,
31,
31,
32,
33,
33,
34,
35,
35,
36,
36,
36,
37,
37,
38,
38,
38,
38,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
38,
38,
38,
37,
37,
37,
36,
36,
36,
35,
35,
34,
34,
33,
33,
32,
32,
31,
30,
30,
29,
29,
28,
27,
27,
26,
26,
25,
24,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
18,
17,
17,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
26,
27,
28,
29,
30,
31,
32,
32,
33,
34,
35,
36,
36,
37,
38,
38,
39,
40,
40,
41,
41,
42,
43,
43,
44,
44,
45,
45,
45,
46,
46,
46,
47,
47,
47,
47,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
47,
47,
47,
47,
46,
46,
46,
45,
45,
45,
44,
44,
43,
43,
43,
42,
42,
41,
41,
40,
39,
39,
38,
38,
37,
36,
36,
35,
35,
34,
33,
33,
32,
31,
31,
30,
30,
29,
28,
28,
27,
26,
26,
25,
24,
24,
23,
23,
22,
21,
21,
20,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
31,
32,
33,
34,
35,
36,
37,
37,
38,
39,
40,
40,
41,
42,
42,
43,
44,
44,
45,
45,
46,
46,
47,
47,
48,
48,
49,
49,
49,
49,
50,
50,
50,
50,
50,
51,
51,
51,
51,
51,
51,
50,
50,
50,
50,
50,
50,
49,
49,
49,
48,
48,
48,
47,
47,
46,
46,
45,
45,
44,
44,
43,
42,
42,
41,
40,
40,
39,
38,
38,
37,
36,
36,
35,
34,
33,
33,
32,
31,
31,
30,
29,
28,
28,
27,
26,
25,
25,
24,
23,
23,
22,
21,
21,
20,
19,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
38,
39,
40,
40,
41,
42,
43,
44,
44,
45,
46,
46,
47,
48,
48,
49,
50,
50,
51,
51,
52,
52,
53,
53,
53,
54,
54,
55,
55,
55,
55,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
56,
55,
55,
55,
55,
54,
54,
54,
53,
53,
53,
52,
52,
51,
51,
50,
50,
49,
48,
48,
47,
47,
46,
45,
45,
44,
43,
43,
42,
41,
41,
40,
39,
38,
38,
37,
36,
35,
35,
34,
33,
32,
32,
31,
30,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
39,
40,
41,
42,
43,
44,
44,
45,
46,
47,
47,
48,
49,
50,
50,
51,
51,
52,
53,
53,
54,
54,
55,
55,
55,
56,
56,
56,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
56,
56,
56,
55,
55,
55,
54,
54,
53,
53,
52,
52,
51,
50,
50,
49,
48,
48,
47,
46,
45,
44,
44,
43,
42,
41,
40,
39,
39,
38,
37,
36,
35,
34,
33,
32,
32,
31,
30,
29,
28,
27,
27,
26,
25,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
45,
46,
47,
48,
49,
50,
51,
51,
52,
53,
54,
54,
55,
56,
57,
57,
58,
59,
59,
60,
60,
61,
61,
62,
62,
63,
63,
64,
64,
64,
65,
65,
65,
65,
65,
65,
66,
66,
66,
66,
66,
65,
65,
65,
65,
65,
65,
64,
64,
64,
63,
63,
62,
62,
61,
61,
60,
59,
59,
58,
57,
57,
56,
55,
54,
54,
53,
52,
51,
50,
49,
48,
47,
46,
45,
45,
44,
43,
42,
41,
40,
39,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
46,
47,
48,
49,
50,
51,
52,
53,
53,
54,
55,
56,
57,
58,
58,
59,
60,
60,
61,
62,
63,
63,
64,
64,
65,
66,
66,
67,
67,
67,
68,
68,
69,
69,
69,
70,
70,
70,
70,
70,
70,
71,
71,
71,
71,
70,
70,
70,
70,
70,
70,
69,
69,
69,
68,
68,
67,
67,
66,
66,
65,
65,
64,
63,
63,
62,
61,
60,
60,
59,
58,
57,
56,
55,
54,
53,
52,
51,
50,
49,
48,
0,
1,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
49,
50,
51,
51,
52,
53,
54,
55,
56,
57,
58,
58,
59,
60,
61,
62,
62,
63,
64,
65,
65,
66,
67,
67,
68,
68,
69,
70,
70,
71,
71,
72,
72,
72,
73,
73,
73,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
73,
73,
73,
72,
72,
72,
71,
71,
70,
69,
69,
68,
67,
67,
66,
65,
64,
63,
63,
62,
61,
60,
59,
58,
57,
56,
55,
54,
0,
0,
1,
2,
3,
3,
4,
4,
4,
5,
5,
5,
5,
5,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
5,
6,
7,
7,
8,
8,
9,
9,
10,
10,
10,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
10,
10,
10,
10,
10,
9,
9,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
8,
9,
10,
10,
11,
12,
12,
13,
13,
14,
14,
15,
15,
15,
16,
16,
16,
17,
17,
17,
17,
17,
17,
17,
18,
18,
18,
18,
18,
18,
18,
17,
17,
17,
17,
17,
17,
17,
16,
16,
16,
16,
16,
15,
15,
15,
15,
15,
14,
14,
14,
13,
13,
13,
13,
12,
12,
12,
12,
11,
11,
11,
10,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
13,
14,
15,
15,
16,
17,
17,
18,
18,
19,
19,
20,
20,
21,
21,
21,
22,
22,
22,
22,
22,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
22,
22,
22,
22,
22,
22,
21,
21,
21,
21,
20,
20,
20,
19,
19,
19,
18,
18,
18,
17,
17,
17,
16,
16,
15,
15,
15,
14,
14,
14,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
15,
16,
17,
18,
19,
19,
20,
21,
21,
22,
23,
23,
24,
24,
25,
25,
26,
26,
27,
27,
27,
28,
28,
28,
28,
29,
29,
29,
29,
29,
29,
29,
29,
29,
29,
29,
29,
29,
29,
28,
28,
28,
28,
28,
27,
27,
27,
26,
26,
26,
25,
25,
25,
24,
24,
24,
23,
23,
22,
22,
21,
21,
21,
20,
20,
19,
19,
18,
18,
17,
17,
17,
16,
16,
15,
15,
14,
14,
14,
13,
13,
12,
12,
12,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
19,
20,
21,
22,
23,
23,
24,
25,
26,
26,
27,
28,
28,
29,
29,
30,
30,
31,
31,
32,
32,
32,
33,
33,
33,
33,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
33,
33,
33,
33,
32,
32,
32,
31,
31,
31,
30,
30,
29,
29,
29,
28,
28,
27,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
20,
20,
19,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
24,
25,
26,
27,
28,
28,
29,
30,
30,
31,
32,
32,
33,
34,
34,
35,
35,
35,
36,
36,
37,
37,
37,
37,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
37,
37,
37,
37,
36,
36,
36,
35,
35,
35,
34,
34,
33,
33,
32,
32,
31,
31,
30,
30,
29,
28,
28,
27,
27,
26,
25,
25,
24,
24,
23,
22,
22,
21,
21,
20,
19,
19,
18,
18,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
22,
23,
24,
25,
26,
27,
28,
28,
29,
30,
31,
32,
32,
33,
34,
34,
35,
36,
36,
37,
38,
38,
39,
39,
40,
40,
41,
41,
42,
42,
43,
43,
43,
44,
44,
44,
44,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
44,
44,
44,
44,
43,
43,
43,
42,
42,
42,
41,
41,
40,
40,
39,
39,
38,
38,
37,
37,
36,
36,
35,
35,
34,
34,
33,
32,
32,
31,
31,
30,
29,
29,
28,
28,
27,
26,
26,
25,
25,
24,
23,
23,
22,
22,
21,
21,
20,
19,
19,
18,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
28,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
38,
38,
39,
40,
40,
41,
42,
42,
43,
44,
44,
45,
45,
46,
46,
47,
47,
48,
48,
48,
49,
49,
49,
49,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
50,
49,
49,
49,
49,
48,
48,
48,
47,
47,
46,
46,
45,
45,
44,
44,
43,
43,
42,
42,
41,
40,
40,
39,
38,
38,
37,
36,
36,
35,
34,
34,
33,
32,
32,
31,
30,
30,
29,
28,
28,
27,
26,
26,
25,
24,
24,
23,
22,
22,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
33,
34,
35,
36,
37,
38,
39,
39,
40,
41,
42,
42,
43,
44,
44,
45,
46,
46,
47,
48,
48,
49,
49,
50,
50,
50,
51,
51,
52,
52,
52,
52,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
53,
52,
52,
52,
52,
51,
51,
51,
50,
50,
49,
49,
48,
48,
47,
47,
46,
45,
45,
44,
43,
43,
42,
41,
41,
40,
39,
38,
38,
37,
36,
35,
35,
34,
33,
32,
31,
31,
30,
29,
28,
28,
27,
26,
25,
25,
24,
23,
23,
22,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
37,
38,
39,
40,
41,
42,
43,
44,
44,
45,
46,
47,
47,
48,
49,
50,
50,
51,
52,
52,
53,
53,
54,
54,
55,
55,
56,
56,
57,
57,
57,
58,
58,
58,
58,
58,
59,
59,
59,
59,
59,
59,
59,
59,
59,
58,
58,
58,
58,
57,
57,
57,
56,
56,
56,
55,
55,
54,
54,
53,
52,
52,
51,
51,
50,
49,
48,
48,
47,
46,
45,
45,
44,
43,
42,
41,
41,
40,
39,
38,
37,
36,
36,
35,
34,
33,
32,
31,
30,
30,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
42,
43,
44,
45,
46,
47,
47,
48,
49,
50,
50,
51,
52,
53,
53,
54,
54,
55,
55,
56,
56,
57,
57,
58,
58,
58,
59,
59,
59,
59,
60,
60,
60,
60,
60,
60,
60,
60,
60,
59,
59,
59,
59,
58,
58,
58,
57,
57,
56,
56,
55,
55,
54,
54,
53,
52,
52,
51,
50,
49,
49,
48,
47,
46,
45,
45,
44,
43,
42,
41,
40,
39,
38,
37,
36,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
0,
1,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
46,
47,
48,
49,
50,
51,
52,
52,
53,
54,
55,
55,
56,
57,
57,
58,
59,
59,
60,
61,
61,
62,
62,
63,
63,
63,
64,
64,
64,
65,
65,
65,
65,
65,
65,
65,
65,
65,
65,
65,
65,
65,
65,
64,
64,
64,
63,
63,
63,
62,
62,
61,
60,
60,
59,
58,
58,
57,
56,
55,
55,
54,
53,
52,
51,
50,
49,
48,
47,
47,
46,
45,
44,
43,
42,
41,
40,
39,
38,
37,
36,
0,
1,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
49,
49,
50,
51,
52,
53,
54,
55,
55,
56,
57,
58,
59,
59,
60,
61,
62,
62,
63,
64,
64,
65,
65,
66,
66,
67,
67,
68,
68,
69,
69,
69,
69,
70,
70,
70,
70,
70,
71,
71,
71,
71,
71,
70,
70,
70,
70,
70,
69,
69,
69,
68,
68,
68,
67,
67,
66,
65,
65,
64,
63,
63,
62,
61,
61,
60,
59,
58,
57,
56,
55,
54,
53,
52,
52,
51,
50,
49,
48,
0,
1,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
49,
50,
51,
52,
53,
54,
54,
55,
56,
57,
58,
59,
60,
60,
61,
62,
63,
64,
64,
65,
66,
66,
67,
68,
68,
69,
69,
70,
70,
71,
71,
72,
72,
73,
73,
73,
73,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
73,
73,
73,
72,
72,
71,
71,
70,
70,
69,
69,
68,
67,
67,
66,
65,
64,
63,
62,
61,
61,
60,
59,
58,
57,
56,
54,
53,
52,
51,
0,
0,
1,
2,
3,
3,
4,
4,
4,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
5,
6,
7,
7,
8,
8,
9,
9,
9,
10,
10,
10,
10,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
10,
10,
10,
10,
10,
10,
10,
9,
9,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
8,
9,
10,
10,
11,
12,
12,
13,
13,
14,
14,
14,
15,
15,
15,
15,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
15,
15,
15,
15,
15,
14,
14,
14,
14,
13,
13,
13,
12,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
7,
8,
9,
10,
10,
11,
12,
12,
13,
13,
14,
14,
15,
15,
16,
16,
16,
17,
17,
17,
17,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
18,
17,
17,
17,
17,
17,
16,
16,
16,
16,
15,
15,
15,
15,
14,
14,
14,
13,
13,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
13,
14,
15,
16,
17,
17,
18,
19,
19,
20,
21,
21,
22,
22,
23,
23,
24,
24,
25,
25,
25,
26,
26,
26,
26,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
26,
26,
26,
26,
26,
25,
25,
25,
24,
24,
24,
23,
23,
23,
22,
22,
22,
21,
21,
21,
20,
20,
19,
19,
19,
18,
18,
17,
17,
17,
16,
16,
15,
15,
15,
14,
14,
13,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
16,
17,
18,
19,
20,
21,
21,
22,
23,
23,
24,
25,
25,
26,
27,
27,
28,
28,
29,
29,
30,
30,
30,
31,
31,
31,
32,
32,
32,
32,
32,
32,
32,
33,
33,
33,
33,
33,
32,
32,
32,
32,
32,
32,
32,
31,
31,
31,
31,
30,
30,
30,
29,
29,
29,
28,
28,
28,
27,
27,
26,
26,
25,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
14,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
18,
19,
20,
21,
22,
23,
23,
24,
25,
26,
26,
27,
28,
28,
29,
30,
30,
31,
31,
32,
32,
33,
33,
34,
34,
34,
35,
35,
35,
36,
36,
36,
36,
36,
36,
36,
36,
37,
37,
36,
36,
36,
36,
36,
36,
36,
36,
35,
35,
35,
35,
34,
34,
34,
33,
33,
33,
32,
32,
31,
31,
30,
30,
30,
29,
29,
28,
28,
27,
27,
26,
26,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
14,
13,
13,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
20,
21,
22,
23,
24,
25,
26,
26,
27,
28,
29,
29,
30,
31,
31,
32,
33,
33,
34,
35,
35,
36,
36,
37,
37,
38,
38,
38,
39,
39,
40,
40,
40,
40,
41,
41,
41,
41,
41,
41,
42,
42,
42,
42,
42,
42,
42,
42,
41,
41,
41,
41,
41,
41,
40,
40,
40,
40,
39,
39,
39,
38,
38,
37,
37,
37,
36,
36,
35,
35,
34,
34,
33,
33,
32,
32,
31,
31,
30,
30,
29,
29,
28,
28,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
19,
19,
18,
18,
17,
17,
17,
16,
16,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
37,
38,
39,
39,
40,
41,
41,
42,
42,
43,
43,
44,
44,
45,
45,
45,
45,
46,
46,
46,
46,
46,
46,
46,
47,
46,
46,
46,
46,
46,
46,
46,
45,
45,
45,
45,
44,
44,
43,
43,
42,
42,
41,
41,
40,
40,
39,
39,
38,
37,
37,
36,
35,
35,
34,
33,
33,
32,
31,
30,
30,
29,
28,
28,
27,
26,
25,
25,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
16,
15,
14,
14,
13,
13,
12,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
38,
39,
39,
40,
41,
42,
42,
43,
44,
44,
45,
46,
46,
47,
47,
48,
48,
49,
49,
49,
50,
50,
50,
50,
51,
51,
51,
51,
51,
51,
51,
51,
51,
50,
50,
50,
50,
49,
49,
49,
48,
48,
48,
47,
47,
46,
46,
45,
44,
44,
43,
42,
42,
41,
40,
40,
39,
38,
37,
37,
36,
35,
34,
33,
33,
32,
31,
30,
30,
29,
28,
27,
26,
26,
25,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
15,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
37,
38,
39,
40,
41,
42,
42,
43,
44,
45,
45,
46,
47,
47,
48,
48,
49,
49,
50,
50,
51,
51,
51,
52,
52,
52,
52,
53,
53,
53,
53,
53,
53,
53,
53,
52,
52,
52,
52,
52,
51,
51,
50,
50,
50,
49,
49,
48,
47,
47,
46,
46,
45,
44,
43,
43,
42,
41,
40,
40,
39,
38,
37,
36,
35,
35,
34,
33,
32,
31,
30,
29,
29,
28,
27,
26,
25,
24,
24,
23,
22,
21,
20,
20,
19,
18,
18,
17,
16,
16,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
37,
38,
39,
40,
41,
42,
43,
43,
44,
45,
46,
47,
47,
48,
49,
49,
50,
51,
51,
52,
52,
53,
53,
54,
54,
55,
55,
56,
56,
56,
56,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
56,
56,
56,
56,
55,
55,
54,
54,
53,
53,
52,
52,
51,
50,
50,
49,
48,
48,
47,
46,
45,
44,
44,
43,
42,
41,
40,
39,
38,
37,
36,
35,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
25,
24,
23,
22,
21,
0,
1,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
46,
47,
48,
49,
50,
51,
51,
52,
53,
54,
54,
55,
56,
56,
57,
57,
58,
58,
59,
59,
60,
60,
60,
61,
61,
61,
61,
61,
62,
62,
62,
62,
62,
62,
61,
61,
61,
61,
61,
60,
60,
60,
59,
59,
58,
58,
57,
56,
56,
55,
54,
54,
53,
52,
51,
51,
50,
49,
48,
47,
46,
45,
44,
43,
42,
41,
40,
39,
38,
37,
36,
35,
34,
33,
32,
31,
31,
30,
29,
28,
27,
0,
1,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
49,
49,
50,
51,
52,
53,
54,
55,
55,
56,
57,
58,
58,
59,
60,
60,
61,
62,
62,
63,
63,
64,
64,
65,
65,
65,
66,
66,
66,
67,
67,
67,
67,
67,
67,
67,
67,
67,
67,
67,
67,
66,
66,
66,
65,
65,
65,
64,
64,
63,
62,
62,
61,
61,
60,
59,
58,
58,
57,
56,
55,
54,
53,
52,
51,
50,
49,
48,
47,
46,
45,
44,
43,
42,
41,
40,
39,
38,
37,
0,
1,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
49,
50,
51,
52,
52,
53,
54,
55,
56,
57,
57,
58,
59,
60,
61,
61,
62,
63,
63,
64,
65,
65,
66,
66,
67,
67,
68,
68,
68,
69,
69,
69,
70,
70,
70,
70,
70,
70,
70,
70,
70,
70,
70,
70,
69,
69,
69,
68,
68,
68,
67,
67,
66,
66,
65,
64,
64,
63,
62,
61,
60,
60,
59,
58,
57,
56,
55,
54,
53,
52,
51,
50,
49,
48,
47,
45,
44,
43,
42,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
49,
50,
51,
52,
53,
54,
55,
56,
56,
57,
58,
59,
60,
61,
62,
62,
63,
64,
65,
65,
66,
67,
67,
68,
69,
69,
70,
70,
71,
71,
72,
72,
73,
73,
73,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
74,
73,
73,
73,
72,
72,
71,
71,
70,
69,
69,
68,
67,
66,
66,
65,
64,
63,
62,
61,
60,
59,
58,
57,
56,
54,
53,
52,
51,
50,
49,
0,
0,
1,
2,
3,
3,
4,
4,
4,
4,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
5,
6,
6,
7,
7,
8,
8,
9,
9,
9,
9,
10,
10,
10,
10,
10,
10,
10,
10,
10,
10,
10,
10,
10,
10,
10,
10,
10,
9,
9,
9,
9,
9,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
8,
9,
10,
10,
11,
11,
12,
12,
13,
13,
14,
14,
14,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
14,
14,
14,
14,
13,
13,
13,
13,
12,
12,
12,
12,
11,
11,
11,
10,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
13,
13,
14,
14,
15,
16,
16,
17,
17,
17,
18,
18,
18,
18,
19,
19,
19,
19,
19,
19,
19,
19,
19,
19,
19,
19,
19,
18,
18,
18,
18,
17,
17,
17,
17,
16,
16,
16,
15,
15,
15,
14,
14,
14,
13,
13,
13,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
14,
15,
16,
17,
17,
18,
19,
19,
20,
21,
21,
22,
22,
23,
23,
23,
24,
24,
24,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
24,
24,
24,
24,
23,
23,
23,
22,
22,
22,
21,
21,
20,
20,
20,
19,
19,
18,
18,
18,
17,
17,
16,
16,
15,
15,
15,
14,
14,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
18,
19,
20,
21,
22,
22,
23,
24,
24,
25,
25,
26,
27,
27,
27,
28,
28,
29,
29,
29,
29,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
29,
29,
29,
29,
28,
28,
28,
27,
27,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
22,
23,
24,
25,
26,
26,
27,
28,
28,
29,
30,
30,
31,
31,
32,
32,
33,
33,
33,
34,
34,
34,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
34,
34,
34,
34,
33,
33,
33,
32,
32,
32,
31,
31,
30,
30,
29,
29,
28,
28,
27,
27,
26,
25,
25,
24,
24,
23,
23,
22,
21,
21,
20,
20,
19,
19,
18,
18,
17,
17,
16,
15,
15,
14,
14,
13,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
24,
25,
26,
27,
28,
29,
29,
30,
31,
31,
32,
33,
33,
34,
34,
35,
35,
36,
36,
37,
37,
37,
38,
38,
38,
38,
39,
39,
39,
39,
39,
39,
39,
39,
39,
38,
38,
38,
38,
37,
37,
37,
36,
36,
36,
35,
35,
34,
34,
33,
33,
32,
32,
31,
30,
30,
29,
29,
28,
27,
27,
26,
26,
25,
24,
24,
23,
22,
22,
21,
20,
20,
19,
19,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
24,
25,
26,
27,
27,
28,
29,
30,
30,
31,
31,
32,
32,
33,
33,
34,
34,
35,
35,
35,
35,
36,
36,
36,
36,
36,
36,
36,
36,
36,
36,
36,
35,
35,
35,
35,
34,
34,
34,
33,
33,
32,
32,
31,
31,
30,
30,
29,
29,
28,
27,
27,
26,
26,
25,
24,
24,
23,
22,
22,
21,
20,
20,
19,
19,
18,
17,
17,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
26,
27,
28,
29,
30,
30,
31,
32,
32,
33,
34,
34,
35,
35,
36,
36,
37,
37,
37,
38,
38,
38,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
38,
38,
38,
38,
37,
37,
36,
36,
36,
35,
35,
34,
34,
33,
33,
32,
31,
31,
30,
30,
29,
28,
28,
27,
26,
26,
25,
24,
24,
23,
22,
21,
21,
20,
19,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
30,
31,
32,
33,
34,
34,
35,
36,
36,
37,
38,
38,
39,
39,
40,
40,
41,
41,
42,
42,
42,
43,
43,
43,
43,
43,
43,
44,
44,
44,
43,
43,
43,
43,
43,
43,
42,
42,
42,
41,
41,
40,
40,
39,
39,
38,
38,
37,
37,
36,
35,
35,
34,
33,
33,
32,
31,
31,
30,
29,
28,
28,
27,
26,
25,
25,
24,
23,
22,
22,
21,
20,
19,
19,
18,
17,
17,
16,
15,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
31,
32,
33,
34,
35,
35,
36,
37,
38,
38,
39,
40,
40,
41,
42,
42,
43,
43,
44,
44,
44,
45,
45,
45,
46,
46,
46,
46,
46,
46,
46,
46,
46,
46,
46,
46,
46,
45,
45,
45,
44,
44,
44,
43,
43,
42,
42,
41,
40,
40,
39,
38,
38,
37,
36,
36,
35,
34,
33,
33,
32,
31,
30,
29,
29,
28,
27,
26,
25,
24,
24,
23,
22,
21,
21,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
39,
40,
41,
42,
43,
43,
44,
45,
46,
46,
47,
47,
48,
49,
49,
50,
50,
50,
51,
51,
52,
52,
52,
52,
52,
53,
53,
53,
53,
53,
53,
53,
52,
52,
52,
52,
51,
51,
51,
50,
50,
49,
49,
48,
48,
47,
46,
46,
45,
44,
44,
43,
42,
41,
40,
40,
39,
38,
37,
36,
35,
34,
33,
32,
31,
30,
30,
29,
28,
27,
26,
25,
24,
23,
22,
22,
21,
20,
19,
18,
18,
17,
16,
15,
15,
14,
13,
13,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
13,
14,
15,
16,
16,
17,
18,
18,
19,
20,
20,
21,
21,
22,
23,
23,
24,
25,
25,
26,
27,
28,
28,
29,
30,
31,
32,
33,
33,
34,
35,
36,
37,
38,
39,
40,
41,
41,
42,
43,
44,
45,
45,
46,
47,
47,
48,
49,
49,
50,
50,
50,
51,
51,
51,
51,
52,
52,
52,
52,
52,
51,
51,
51,
51,
51,
50,
50,
49,
49,
48,
48,
47,
47,
46,
45,
45,
44,
43,
42,
41,
41,
40,
39,
38,
37,
36,
35,
34,
33,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
22,
21,
20,
19,
18,
18,
17,
16,
15,
15,
14,
13,
0,
0,
2,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
44,
45,
46,
47,
48,
49,
49,
50,
51,
51,
52,
53,
53,
54,
55,
55,
56,
56,
56,
57,
57,
57,
58,
58,
58,
58,
58,
58,
58,
58,
58,
58,
58,
58,
58,
57,
57,
57,
56,
56,
55,
55,
54,
53,
53,
52,
51,
51,
50,
49,
48,
47,
46,
46,
45,
44,
43,
42,
41,
40,
39,
38,
37,
36,
35,
34,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
22,
21,
20,
19,
18,
17,
0,
0,
2,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
44,
45,
46,
47,
48,
49,
49,
50,
51,
52,
52,
53,
54,
54,
55,
55,
56,
57,
57,
57,
58,
58,
59,
59,
59,
59,
60,
60,
60,
60,
60,
60,
60,
60,
60,
59,
59,
59,
59,
58,
58,
57,
57,
56,
56,
55,
55,
54,
53,
53,
52,
51,
50,
49,
48,
47,
47,
46,
45,
44,
43,
42,
41,
40,
39,
37,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
0,
1,
2,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
44,
45,
46,
47,
48,
49,
49,
50,
51,
52,
52,
53,
54,
54,
55,
56,
56,
57,
57,
58,
58,
58,
59,
59,
59,
59,
60,
60,
60,
60,
60,
60,
60,
60,
60,
59,
59,
59,
59,
58,
58,
57,
57,
56,
56,
55,
55,
54,
53,
52,
52,
51,
50,
49,
48,
47,
46,
45,
44,
43,
42,
41,
40,
39,
38,
37,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
0,
0,
1,
2,
3,
3,
3,
4,
4,
4,
4,
4,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
4,
5,
6,
6,
7,
7,
8,
8,
8,
9,
9,
9,
9,
9,
9,
10,
10,
10,
10,
10,
10,
10,
9,
9,
9,
9,
9,
9,
9,
9,
9,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
7,
8,
9,
9,
10,
10,
11,
11,
12,
12,
13,
13,
13,
14,
14,
14,
14,
14,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
14,
14,
14,
14,
14,
14,
13,
13,
13,
13,
13,
12,
12,
12,
12,
11,
11,
11,
11,
10,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
9,
10,
11,
12,
12,
13,
13,
14,
14,
15,
15,
16,
16,
16,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
16,
16,
16,
16,
16,
15,
15,
15,
14,
14,
14,
13,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
12,
13,
14,
15,
16,
16,
17,
18,
18,
19,
19,
20,
20,
21,
21,
21,
22,
22,
22,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
22,
22,
22,
22,
21,
21,
21,
21,
20,
20,
20,
19,
19,
18,
18,
18,
17,
17,
16,
16,
15,
15,
15,
14,
14,
13,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
16,
17,
18,
19,
20,
20,
21,
22,
22,
23,
24,
24,
25,
25,
26,
26,
26,
27,
27,
28,
28,
28,
28,
28,
29,
29,
29,
29,
29,
29,
29,
29,
29,
28,
28,
28,
28,
28,
27,
27,
27,
27,
26,
26,
25,
25,
25,
24,
24,
23,
23,
22,
22,
22,
21,
21,
20,
20,
19,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
17,
18,
19,
20,
21,
22,
22,
23,
24,
25,
25,
26,
27,
27,
28,
28,
29,
29,
30,
30,
31,
31,
32,
32,
32,
32,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
32,
32,
32,
31,
31,
31,
30,
30,
30,
29,
29,
28,
28,
27,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
16,
17,
18,
19,
20,
21,
21,
22,
23,
24,
24,
25,
26,
26,
27,
28,
28,
29,
29,
30,
30,
31,
31,
32,
32,
33,
33,
33,
34,
34,
34,
34,
34,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
34,
34,
34,
34,
34,
33,
33,
33,
32,
32,
32,
31,
31,
30,
30,
29,
29,
28,
28,
27,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
21,
21,
20,
20,
19,
19,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
27,
28,
29,
30,
31,
31,
32,
33,
34,
34,
35,
36,
36,
37,
37,
38,
38,
39,
39,
40,
40,
40,
41,
41,
41,
41,
41,
41,
42,
42,
42,
41,
41,
41,
41,
41,
41,
40,
40,
40,
40,
39,
39,
38,
38,
37,
37,
36,
36,
35,
35,
34,
33,
33,
32,
32,
31,
30,
30,
29,
28,
27,
27,
26,
25,
25,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
18,
19,
20,
21,
22,
22,
23,
24,
25,
25,
26,
27,
27,
28,
28,
29,
29,
30,
30,
31,
31,
31,
32,
32,
32,
32,
32,
32,
33,
33,
33,
33,
32,
32,
32,
32,
32,
32,
31,
31,
31,
31,
30,
30,
29,
29,
29,
28,
28,
27,
27,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
20,
20,
19,
19,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
16,
17,
18,
19,
20,
21,
21,
22,
23,
24,
24,
25,
26,
26,
27,
28,
28,
29,
29,
30,
30,
31,
31,
32,
32,
33,
33,
33,
34,
34,
34,
34,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
34,
34,
34,
34,
33,
33,
33,
32,
32,
32,
31,
31,
30,
30,
29,
29,
28,
28,
27,
26,
26,
25,
25,
24,
23,
23,
22,
22,
21,
20,
20,
19,
19,
18,
17,
17,
16,
16,
15,
15,
14,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
20,
21,
22,
23,
24,
25,
26,
26,
27,
28,
29,
29,
30,
31,
31,
32,
33,
33,
34,
34,
35,
35,
36,
36,
37,
37,
37,
38,
38,
38,
38,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
38,
38,
38,
38,
37,
37,
36,
36,
36,
35,
35,
34,
34,
33,
33,
32,
31,
31,
30,
29,
29,
28,
27,
27,
26,
25,
25,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
15,
15,
14,
14,
13,
13,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
5,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
17,
18,
19,
20,
21,
22,
22,
23,
24,
25,
26,
26,
27,
28,
29,
29,
30,
31,
31,
32,
33,
33,
34,
35,
35,
36,
36,
37,
37,
38,
38,
39,
39,
40,
40,
40,
41,
41,
41,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
41,
41,
41,
41,
40,
40,
39,
39,
39,
38,
38,
37,
37,
36,
35,
35,
34,
34,
33,
32,
32,
31,
30,
30,
29,
28,
28,
27,
26,
25,
25,
24,
23,
23,
22,
21,
20,
20,
19,
18,
18,
17,
16,
16,
15,
15,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
27,
28,
29,
30,
31,
32,
32,
33,
34,
35,
36,
36,
37,
38,
38,
39,
39,
40,
41,
41,
42,
42,
42,
43,
43,
44,
44,
44,
44,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
44,
44,
44,
43,
43,
43,
42,
42,
41,
41,
40,
40,
39,
39,
38,
37,
37,
36,
36,
35,
34,
33,
33,
32,
31,
30,
30,
29,
28,
27,
27,
26,
25,
24,
24,
23,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
15,
15,
14,
13,
13,
12,
12,
11,
11,
10,
10,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
26,
27,
28,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
38,
38,
39,
40,
40,
41,
42,
42,
43,
43,
44,
44,
45,
45,
46,
46,
46,
47,
47,
47,
47,
47,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
47,
47,
47,
47,
47,
46,
46,
46,
45,
45,
44,
44,
43,
43,
42,
42,
41,
41,
40,
39,
39,
38,
37,
37,
36,
35,
34,
34,
33,
32,
31,
31,
30,
29,
28,
27,
27,
26,
25,
24,
23,
23,
22,
21,
20,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
28,
29,
30,
31,
32,
33,
33,
34,
35,
36,
36,
37,
38,
39,
39,
40,
40,
41,
42,
42,
43,
43,
44,
44,
44,
45,
45,
45,
46,
46,
46,
46,
47,
47,
47,
47,
47,
47,
47,
47,
47,
47,
47,
47,
47,
47,
46,
46,
46,
46,
45,
45,
45,
44,
44,
43,
43,
42,
42,
41,
41,
40,
40,
39,
38,
38,
37,
36,
36,
35,
34,
33,
33,
32,
31,
30,
30,
29,
28,
27,
26,
26,
25,
24,
23,
23,
22,
21,
20,
20,
19,
18,
17,
17,
16,
15,
15,
14,
14,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
13,
13,
14,
15,
15,
16,
16,
17,
17,
18,
18,
19,
19,
20,
20,
21,
22,
22,
23,
24,
24,
25,
26,
27,
27,
28,
29,
30,
31,
32,
32,
33,
34,
35,
36,
37,
37,
38,
39,
40,
40,
41,
42,
42,
43,
44,
44,
45,
45,
46,
46,
46,
47,
47,
47,
47,
47,
48,
48,
48,
48,
48,
48,
47,
47,
47,
47,
47,
46,
46,
46,
45,
45,
44,
44,
43,
43,
42,
42,
41,
40,
40,
39,
39,
38,
37,
36,
36,
35,
34,
33,
33,
32,
31,
30,
29,
29,
28,
27,
26,
26,
25,
24,
23,
22,
22,
21,
20,
19,
19,
18,
17,
17,
16,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
13,
14,
14,
15,
16,
16,
17,
17,
18,
19,
19,
20,
21,
21,
22,
23,
24,
24,
25,
26,
27,
28,
29,
30,
31,
32,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
43,
44,
45,
46,
46,
47,
48,
48,
49,
49,
50,
50,
51,
51,
52,
52,
52,
52,
52,
53,
53,
53,
53,
53,
53,
53,
52,
52,
52,
52,
52,
51,
51,
50,
50,
50,
49,
49,
48,
47,
47,
46,
46,
45,
44,
43,
43,
42,
41,
40,
40,
39,
38,
37,
36,
35,
34,
34,
33,
32,
31,
30,
29,
28,
27,
27,
26,
25,
24,
23,
22,
21,
21,
20,
19,
18,
0,
0,
1,
2,
2,
3,
3,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
4,
5,
6,
6,
7,
7,
7,
8,
8,
8,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
9,
8,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
7,
8,
9,
9,
10,
10,
11,
11,
12,
12,
12,
13,
13,
13,
13,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
14,
13,
13,
13,
13,
13,
12,
12,
12,
12,
12,
11,
11,
11,
11,
10,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
9,
10,
11,
12,
12,
13,
13,
14,
14,
15,
15,
16,
16,
16,
16,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
16,
16,
16,
16,
16,
15,
15,
15,
14,
14,
14,
14,
13,
13,
13,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
13,
14,
15,
16,
16,
17,
18,
18,
19,
19,
20,
20,
21,
21,
21,
21,
22,
22,
22,
22,
22,
22,
22,
22,
22,
22,
22,
22,
22,
21,
21,
21,
21,
20,
20,
20,
19,
19,
19,
18,
18,
17,
17,
17,
16,
16,
15,
15,
14,
14,
14,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
16,
17,
18,
19,
19,
20,
21,
21,
22,
23,
23,
24,
24,
25,
25,
26,
26,
26,
26,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
26,
26,
26,
26,
25,
25,
25,
24,
24,
23,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
20,
21,
22,
23,
24,
24,
25,
26,
26,
27,
27,
28,
28,
29,
29,
30,
30,
30,
31,
31,
31,
31,
32,
32,
32,
32,
32,
32,
32,
32,
31,
31,
31,
31,
31,
30,
30,
30,
29,
29,
28,
28,
28,
27,
27,
26,
26,
25,
25,
24,
24,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
22,
23,
24,
25,
26,
26,
27,
28,
28,
29,
30,
30,
31,
31,
32,
32,
32,
33,
33,
33,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
33,
33,
33,
33,
32,
32,
31,
31,
31,
30,
30,
29,
29,
28,
28,
27,
26,
26,
25,
25,
24,
23,
23,
22,
22,
21,
20,
20,
19,
19,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
25,
26,
27,
28,
29,
29,
30,
31,
31,
32,
33,
33,
34,
34,
35,
35,
36,
36,
36,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
36,
36,
36,
35,
35,
34,
34,
34,
33,
33,
32,
32,
31,
30,
30,
29,
29,
28,
27,
27,
26,
25,
25,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
18,
17,
16,
16,
15,
15,
14,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
25,
26,
27,
28,
29,
29,
30,
31,
31,
32,
33,
33,
34,
34,
35,
35,
35,
36,
36,
36,
36,
37,
37,
37,
37,
37,
37,
37,
37,
37,
36,
36,
36,
36,
35,
35,
35,
34,
34,
33,
33,
32,
32,
31,
31,
30,
30,
29,
28,
28,
27,
26,
26,
25,
24,
24,
23,
22,
22,
21,
20,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
29,
30,
31,
32,
33,
33,
34,
35,
36,
36,
37,
37,
38,
38,
39,
39,
40,
40,
41,
41,
41,
41,
41,
42,
42,
42,
42,
42,
42,
41,
41,
41,
41,
41,
40,
40,
40,
39,
39,
38,
38,
37,
37,
36,
35,
35,
34,
34,
33,
32,
31,
31,
30,
29,
29,
28,
27,
26,
25,
25,
24,
23,
22,
22,
21,
20,
20,
19,
18,
17,
17,
16,
15,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
33,
34,
35,
36,
37,
37,
38,
39,
39,
40,
41,
41,
42,
42,
43,
43,
43,
44,
44,
44,
44,
44,
45,
45,
45,
45,
45,
44,
44,
44,
44,
44,
43,
43,
43,
42,
42,
41,
41,
40,
40,
39,
38,
38,
37,
36,
36,
35,
34,
33,
33,
32,
31,
30,
29,
29,
28,
27,
26,
25,
25,
24,
23,
22,
21,
21,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
5,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
35,
36,
37,
38,
39,
39,
40,
41,
42,
42,
43,
44,
44,
45,
45,
46,
46,
47,
47,
47,
48,
48,
48,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
49,
48,
48,
48,
47,
47,
47,
46,
46,
45,
45,
44,
43,
43,
42,
41,
41,
40,
39,
38,
37,
37,
36,
35,
34,
33,
32,
31,
31,
30,
29,
28,
27,
26,
25,
24,
24,
23,
22,
21,
20,
19,
19,
18,
17,
16,
16,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
9,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
35,
36,
37,
38,
39,
40,
40,
41,
42,
42,
43,
44,
44,
45,
45,
46,
46,
47,
47,
48,
48,
48,
49,
49,
49,
49,
49,
50,
50,
50,
50,
49,
49,
49,
49,
49,
48,
48,
48,
47,
47,
46,
46,
45,
45,
44,
44,
43,
42,
42,
41,
40,
39,
38,
38,
37,
36,
35,
34,
33,
32,
32,
31,
30,
29,
28,
27,
26,
25,
25,
24,
23,
22,
21,
20,
20,
19,
18,
17,
16,
16,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
12,
13,
14,
15,
15,
16,
17,
17,
18,
18,
19,
20,
20,
21,
22,
22,
23,
24,
25,
26,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
47,
48,
49,
50,
50,
51,
52,
52,
53,
53,
54,
54,
54,
55,
55,
55,
55,
55,
55,
55,
55,
55,
54,
54,
54,
54,
53,
53,
52,
52,
51,
50,
50,
49,
48,
48,
47,
46,
45,
44,
43,
42,
41,
40,
39,
38,
37,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
22,
21,
20,
19,
18,
17,
16,
16,
15,
14,
13,
0,
1,
2,
3,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
44,
45,
46,
47,
48,
49,
49,
50,
51,
51,
52,
53,
53,
54,
54,
55,
55,
56,
56,
56,
56,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
57,
56,
56,
56,
55,
55,
54,
54,
53,
53,
52,
51,
50,
50,
49,
48,
47,
46,
45,
45,
44,
43,
42,
41,
40,
39,
38,
37,
36,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
21,
20,
19,
18,
17,
16,
16,
15,
14,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
12,
13,
13,
14,
14,
15,
15,
15,
16,
16,
16,
16,
17,
17,
18,
18,
18,
19,
20,
20,
21,
22,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
33,
34,
35,
36,
37,
38,
40,
41,
42,
43,
44,
45,
46,
47,
47,
48,
49,
50,
50,
51,
52,
52,
52,
53,
53,
53,
54,
54,
54,
54,
54,
54,
53,
53,
53,
53,
52,
52,
51,
51,
50,
50,
49,
48,
48,
47,
46,
45,
44,
43,
42,
42,
41,
40,
39,
38,
37,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
19,
18,
17,
17,
16,
15,
14,
14,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
12,
13,
13,
14,
14,
14,
15,
15,
15,
16,
16,
16,
17,
17,
17,
18,
18,
19,
20,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
35,
36,
37,
38,
39,
40,
42,
43,
44,
45,
46,
47,
48,
49,
49,
50,
51,
52,
52,
53,
53,
54,
54,
54,
55,
55,
55,
55,
55,
55,
55,
55,
55,
55,
54,
54,
53,
53,
53,
52,
51,
51,
50,
49,
49,
48,
47,
46,
45,
44,
43,
42,
41,
40,
39,
38,
37,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
19,
18,
18,
17,
16,
15,
14,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
12,
13,
13,
14,
14,
14,
15,
15,
15,
15,
16,
16,
17,
17,
17,
18,
19,
19,
20,
21,
21,
22,
23,
24,
25,
26,
27,
29,
30,
31,
32,
33,
35,
36,
37,
38,
40,
41,
42,
43,
44,
46,
47,
48,
49,
50,
51,
52,
52,
53,
54,
54,
55,
56,
56,
57,
57,
57,
57,
58,
58,
58,
58,
58,
58,
58,
57,
57,
57,
56,
56,
56,
55,
55,
54,
53,
53,
52,
51,
50,
49,
49,
48,
47,
46,
45,
44,
43,
42,
41,
40,
39,
38,
37,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
19,
18,
17,
17,
0,
0,
1,
2,
2,
3,
3,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
4,
5,
6,
6,
7,
7,
7,
8,
8,
8,
8,
8,
9,
9,
9,
9,
9,
9,
9,
9,
8,
8,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
7,
8,
9,
9,
10,
10,
11,
11,
12,
12,
12,
12,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
12,
12,
12,
12,
12,
11,
11,
11,
11,
10,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
9,
10,
11,
11,
12,
13,
13,
14,
14,
14,
15,
15,
15,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
15,
15,
15,
15,
14,
14,
14,
13,
13,
13,
13,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
12,
13,
14,
15,
15,
16,
17,
17,
18,
18,
18,
19,
19,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
20,
19,
19,
19,
19,
18,
18,
18,
17,
17,
17,
16,
16,
15,
15,
15,
14,
14,
13,
13,
12,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
15,
16,
17,
18,
18,
19,
20,
20,
21,
22,
22,
23,
23,
24,
24,
25,
25,
25,
26,
26,
26,
26,
26,
27,
27,
27,
27,
27,
27,
27,
27,
26,
26,
26,
26,
26,
25,
25,
25,
24,
24,
24,
23,
23,
23,
22,
22,
21,
21,
21,
20,
20,
19,
19,
18,
18,
17,
17,
16,
16,
15,
15,
15,
14,
14,
13,
13,
12,
12,
12,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
19,
20,
21,
22,
23,
23,
24,
25,
25,
26,
26,
27,
27,
28,
28,
29,
29,
29,
30,
30,
30,
30,
30,
31,
31,
31,
31,
31,
31,
30,
30,
30,
30,
30,
29,
29,
29,
28,
28,
28,
27,
27,
26,
26,
25,
25,
25,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
18,
17,
17,
16,
15,
15,
14,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
16,
17,
18,
19,
20,
20,
21,
22,
23,
23,
24,
24,
25,
26,
26,
27,
27,
27,
28,
28,
28,
29,
29,
29,
29,
29,
30,
30,
30,
30,
30,
30,
29,
29,
29,
29,
29,
28,
28,
28,
28,
27,
27,
26,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
19,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
18,
19,
20,
21,
22,
22,
23,
24,
25,
25,
26,
27,
27,
28,
28,
29,
29,
30,
30,
30,
31,
31,
31,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
31,
31,
31,
31,
30,
30,
30,
29,
29,
28,
28,
27,
27,
26,
26,
25,
25,
24,
23,
23,
22,
22,
21,
20,
20,
19,
19,
18,
17,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
16,
17,
18,
19,
20,
21,
22,
22,
23,
24,
25,
25,
26,
27,
28,
28,
29,
30,
30,
31,
31,
32,
33,
33,
34,
34,
35,
35,
35,
36,
36,
36,
37,
37,
37,
37,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
37,
37,
37,
37,
36,
36,
36,
35,
35,
34,
34,
33,
33,
32,
32,
31,
31,
30,
30,
29,
28,
28,
27,
26,
26,
25,
25,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
18,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
7,
7,
7,
6,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
18,
19,
20,
21,
22,
23,
24,
24,
25,
26,
27,
28,
28,
29,
30,
30,
31,
32,
32,
33,
33,
34,
34,
35,
35,
36,
36,
36,
36,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
36,
36,
36,
36,
35,
35,
34,
34,
34,
33,
33,
32,
32,
31,
30,
30,
29,
29,
28,
27,
27,
26,
26,
25,
24,
24,
23,
22,
22,
21,
20,
20,
19,
18,
18,
17,
17,
16,
15,
15,
14,
14,
13,
13,
12,
11,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
12,
13,
14,
14,
15,
16,
16,
17,
17,
18,
19,
19,
20,
20,
21,
21,
22,
22,
23,
23,
24,
25,
25,
26,
26,
27,
27,
28,
29,
29,
30,
30,
31,
31,
32,
32,
33,
33,
33,
34,
34,
34,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
34,
34,
34,
34,
33,
33,
32,
32,
32,
31,
31,
30,
30,
29,
28,
28,
27,
27,
26,
25,
25,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
15,
16,
17,
18,
19,
20,
20,
21,
22,
23,
23,
24,
25,
26,
27,
27,
28,
29,
29,
30,
31,
31,
32,
33,
33,
34,
35,
35,
36,
36,
37,
37,
38,
38,
38,
39,
39,
39,
39,
40,
40,
40,
40,
40,
40,
40,
40,
40,
40,
40,
40,
39,
39,
39,
39,
38,
38,
38,
37,
37,
36,
36,
35,
35,
34,
34,
33,
33,
32,
31,
31,
30,
30,
29,
28,
28,
27,
26,
26,
25,
24,
24,
23,
22,
22,
21,
20,
20,
19,
18,
18,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
12,
13,
14,
14,
15,
16,
16,
17,
17,
18,
19,
19,
20,
20,
21,
22,
22,
23,
24,
24,
25,
26,
26,
27,
28,
29,
29,
30,
31,
32,
32,
33,
34,
35,
35,
36,
37,
37,
38,
38,
39,
39,
40,
40,
41,
41,
41,
41,
42,
42,
42,
42,
42,
42,
42,
42,
42,
41,
41,
41,
41,
40,
40,
39,
39,
39,
38,
38,
37,
36,
36,
35,
35,
34,
33,
33,
32,
31,
30,
30,
29,
28,
27,
27,
26,
25,
24,
24,
23,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
15,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
12,
13,
14,
14,
15,
15,
16,
16,
16,
17,
17,
18,
18,
18,
19,
19,
20,
20,
21,
22,
22,
23,
23,
24,
25,
26,
26,
27,
28,
29,
30,
30,
31,
32,
33,
34,
34,
35,
36,
37,
37,
38,
39,
39,
40,
40,
41,
41,
42,
42,
42,
43,
43,
43,
43,
43,
43,
43,
43,
43,
43,
43,
43,
43,
43,
42,
42,
42,
41,
41,
40,
40,
39,
39,
38,
38,
37,
36,
36,
35,
34,
34,
33,
32,
32,
31,
30,
29,
29,
28,
27,
26,
25,
25,
24,
23,
22,
22,
21,
20,
19,
19,
18,
17,
17,
16,
15,
15,
14,
13,
13,
12,
12,
11,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
13,
14,
14,
15,
15,
16,
17,
17,
18,
18,
19,
19,
20,
21,
21,
22,
23,
24,
24,
25,
26,
27,
28,
28,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
38,
39,
39,
40,
41,
42,
42,
43,
44,
44,
45,
45,
46,
46,
46,
47,
47,
47,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
47,
47,
47,
47,
46,
46,
45,
45,
45,
44,
43,
43,
42,
42,
41,
40,
40,
39,
38,
37,
37,
36,
35,
34,
33,
32,
32,
31,
30,
29,
28,
27,
26,
26,
25,
24,
23,
22,
22,
21,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
12,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
13,
13,
14,
15,
15,
16,
16,
17,
17,
18,
19,
19,
20,
21,
21,
22,
23,
24,
24,
25,
26,
27,
28,
28,
29,
30,
31,
32,
32,
33,
34,
35,
35,
36,
37,
37,
38,
39,
39,
40,
40,
41,
41,
42,
42,
42,
43,
43,
43,
43,
43,
43,
43,
43,
43,
43,
43,
43,
43,
43,
42,
42,
42,
41,
41,
41,
40,
40,
39,
39,
38,
37,
37,
36,
36,
35,
34,
34,
33,
32,
32,
31,
30,
29,
29,
28,
27,
26,
25,
25,
24,
23,
22,
22,
21,
20,
20,
19,
18,
17,
17,
16,
15,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
13,
13,
14,
15,
15,
16,
17,
17,
18,
18,
19,
20,
21,
21,
22,
23,
24,
25,
26,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
39,
40,
41,
42,
42,
43,
44,
44,
45,
45,
46,
46,
46,
47,
47,
47,
47,
48,
48,
48,
48,
48,
47,
47,
47,
47,
47,
46,
46,
46,
45,
45,
44,
44,
43,
43,
42,
41,
41,
40,
39,
39,
38,
37,
36,
36,
35,
34,
33,
32,
32,
31,
30,
29,
28,
27,
26,
26,
25,
24,
23,
22,
22,
21,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
12,
12,
11,
11,
10,
9,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
12,
13,
14,
14,
15,
16,
16,
17,
17,
18,
19,
19,
20,
21,
22,
23,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
32,
33,
34,
35,
36,
37,
38,
38,
39,
40,
40,
41,
42,
42,
43,
43,
44,
44,
44,
45,
45,
45,
46,
46,
46,
46,
46,
46,
46,
46,
46,
46,
46,
45,
45,
45,
45,
44,
44,
44,
43,
43,
42,
42,
41,
41,
40,
40,
39,
38,
38,
37,
36,
36,
35,
34,
34,
33,
32,
31,
31,
30,
29,
28,
27,
27,
26,
25,
24,
23,
23,
22,
21,
20,
20,
19,
18,
17,
17,
16,
15,
15,
14,
13,
13,
12,
12,
11,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
9,
10,
11,
11,
11,
12,
12,
12,
12,
12,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
14,
14,
15,
15,
16,
16,
17,
18,
19,
20,
21,
21,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
41,
42,
42,
43,
43,
44,
44,
44,
45,
45,
45,
45,
45,
45,
45,
45,
45,
44,
44,
44,
43,
43,
43,
42,
42,
41,
40,
40,
39,
39,
38,
37,
36,
36,
35,
34,
33,
33,
32,
31,
30,
29,
28,
28,
27,
26,
25,
24,
23,
23,
22,
21,
20,
19,
19,
18,
17,
16,
16,
15,
14,
14,
13,
12,
12,
11,
0,
0,
1,
2,
2,
3,
3,
3,
4,
4,
4,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
4,
5,
6,
6,
6,
7,
7,
7,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
8,
8,
9,
10,
10,
10,
11,
11,
11,
12,
12,
12,
12,
12,
12,
13,
13,
12,
12,
12,
12,
12,
12,
12,
12,
11,
11,
11,
11,
11,
10,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
9,
10,
11,
11,
12,
13,
13,
14,
14,
14,
15,
15,
15,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
15,
15,
15,
15,
14,
14,
14,
13,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
13,
14,
14,
15,
15,
16,
16,
17,
17,
18,
18,
18,
18,
19,
19,
19,
19,
19,
19,
19,
19,
19,
18,
18,
18,
18,
17,
17,
17,
17,
16,
16,
15,
15,
15,
14,
14,
13,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
14,
15,
16,
17,
17,
18,
19,
19,
20,
21,
21,
22,
22,
23,
23,
24,
24,
24,
24,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
25,
24,
24,
24,
24,
23,
23,
23,
22,
22,
22,
21,
21,
20,
20,
20,
19,
19,
18,
18,
17,
17,
17,
16,
16,
15,
15,
14,
14,
14,
13,
13,
12,
12,
12,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
18,
19,
20,
21,
22,
22,
23,
24,
24,
25,
25,
26,
26,
27,
27,
28,
28,
28,
28,
29,
29,
29,
29,
29,
29,
29,
29,
29,
29,
29,
28,
28,
28,
28,
27,
27,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
23,
24,
25,
26,
26,
27,
28,
28,
29,
29,
30,
30,
31,
31,
31,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
31,
31,
31,
30,
30,
30,
29,
29,
28,
28,
27,
27,
26,
25,
25,
24,
24,
23,
22,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
26,
27,
28,
29,
29,
30,
31,
31,
32,
33,
33,
34,
34,
35,
35,
35,
36,
36,
36,
36,
37,
37,
37,
37,
37,
37,
37,
37,
36,
36,
36,
36,
35,
35,
35,
34,
34,
33,
33,
32,
32,
31,
31,
30,
29,
29,
28,
27,
27,
26,
25,
25,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
31,
32,
33,
34,
34,
35,
36,
37,
37,
38,
38,
39,
39,
40,
40,
40,
41,
41,
41,
41,
42,
42,
42,
42,
42,
42,
42,
41,
41,
41,
41,
40,
40,
40,
39,
39,
38,
38,
37,
37,
36,
35,
35,
34,
33,
33,
32,
31,
31,
30,
29,
28,
28,
27,
26,
25,
25,
24,
23,
22,
22,
21,
20,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
28,
29,
30,
31,
32,
32,
33,
34,
34,
35,
36,
36,
37,
37,
37,
38,
38,
38,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
38,
38,
38,
37,
37,
36,
36,
35,
35,
34,
34,
33,
32,
32,
31,
30,
30,
29,
28,
28,
27,
26,
25,
25,
24,
23,
22,
22,
21,
20,
19,
19,
18,
17,
17,
16,
15,
15,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
29,
30,
31,
32,
33,
33,
34,
35,
36,
36,
37,
37,
38,
38,
39,
39,
40,
40,
40,
41,
41,
41,
41,
41,
42,
42,
42,
41,
41,
41,
41,
41,
41,
40,
40,
40,
39,
39,
38,
38,
37,
37,
36,
35,
35,
34,
33,
33,
32,
31,
30,
30,
29,
28,
27,
26,
26,
25,
24,
23,
22,
22,
21,
20,
19,
19,
18,
17,
16,
16,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
33,
34,
35,
36,
37,
37,
38,
39,
40,
40,
41,
41,
42,
42,
43,
43,
44,
44,
44,
44,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
44,
44,
44,
43,
43,
43,
42,
42,
41,
41,
40,
39,
39,
38,
37,
36,
36,
35,
34,
33,
33,
32,
31,
30,
29,
28,
27,
27,
26,
25,
24,
23,
22,
22,
21,
20,
19,
18,
18,
17,
16,
15,
15,
14,
13,
13,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
7,
6,
6,
5,
5,
5,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
13,
13,
14,
14,
15,
15,
15,
16,
16,
16,
16,
17,
17,
17,
18,
18,
18,
19,
19,
20,
20,
21,
21,
22,
23,
23,
24,
25,
26,
27,
27,
28,
29,
30,
31,
32,
32,
33,
34,
35,
35,
36,
37,
37,
38,
38,
39,
39,
40,
40,
40,
40,
40,
40,
40,
40,
40,
40,
40,
40,
39,
39,
38,
38,
37,
37,
36,
36,
35,
34,
34,
33,
32,
31,
31,
30,
29,
28,
27,
26,
26,
25,
24,
23,
22,
21,
21,
20,
19,
18,
17,
17,
16,
15,
15,
14,
13,
13,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
6,
6,
6,
5,
5,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
12,
13,
14,
14,
15,
16,
16,
17,
18,
18,
19,
20,
20,
21,
22,
22,
23,
24,
25,
26,
27,
28,
29,
29,
30,
31,
32,
33,
35,
36,
37,
38,
39,
40,
41,
41,
42,
43,
44,
45,
46,
46,
47,
48,
48,
49,
49,
50,
50,
51,
51,
51,
51,
51,
51,
51,
51,
51,
51,
51,
51,
50,
50,
50,
49,
49,
48,
47,
47,
46,
45,
45,
44,
43,
42,
41,
40,
40,
39,
38,
37,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
21,
20,
19,
18,
17,
16,
16,
15,
14,
13,
13,
12,
12,
11,
10,
10,
9,
9,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
12,
13,
13,
14,
14,
14,
15,
15,
15,
16,
16,
16,
17,
17,
17,
18,
18,
19,
20,
20,
21,
22,
23,
23,
24,
25,
26,
27,
28,
29,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
45,
46,
47,
47,
48,
48,
49,
49,
49,
50,
50,
50,
50,
50,
50,
50,
49,
49,
49,
48,
48,
47,
47,
46,
46,
45,
44,
44,
43,
42,
41,
41,
40,
39,
38,
37,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
22,
21,
20,
19,
18,
17,
16,
16,
15,
14,
13,
13,
12,
12,
11,
10,
10,
9,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
12,
13,
13,
14,
14,
14,
15,
15,
15,
15,
16,
16,
17,
17,
17,
18,
19,
19,
20,
21,
21,
22,
23,
24,
25,
26,
27,
28,
30,
31,
32,
33,
34,
35,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
48,
49,
50,
50,
51,
51,
51,
52,
52,
52,
52,
52,
52,
52,
52,
52,
52,
51,
51,
51,
50,
50,
49,
49,
48,
47,
47,
46,
45,
44,
43,
42,
42,
41,
40,
39,
38,
37,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
19,
18,
17,
17,
16,
15,
14,
13,
13,
12,
11,
11,
10,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
14,
15,
15,
16,
17,
17,
17,
18,
18,
18,
19,
19,
19,
20,
20,
20,
21,
21,
21,
22,
22,
23,
24,
24,
25,
26,
27,
27,
28,
29,
30,
31,
32,
33,
34,
35,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
46,
47,
48,
49,
49,
50,
50,
51,
51,
51,
52,
52,
52,
52,
52,
52,
52,
52,
51,
51,
51,
50,
50,
49,
48,
48,
47,
46,
46,
45,
44,
43,
42,
41,
40,
39,
38,
37,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
19,
18,
17,
17,
16,
15,
14,
13,
13,
12,
11,
11,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
11,
12,
12,
13,
13,
13,
14,
14,
14,
15,
15,
15,
16,
16,
17,
17,
18,
19,
19,
20,
21,
22,
23,
24,
25,
26,
27,
29,
30,
31,
32,
34,
35,
36,
37,
39,
40,
41,
42,
43,
45,
46,
47,
48,
49,
49,
50,
51,
52,
53,
53,
54,
54,
55,
55,
55,
56,
56,
56,
56,
56,
56,
56,
56,
55,
55,
55,
54,
54,
54,
53,
52,
52,
51,
50,
50,
49,
48,
47,
46,
45,
44,
43,
42,
41,
40,
39,
38,
37,
36,
35,
34,
33,
32,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
19,
18,
17,
17,
16,
15,
14,
13,
13,
12,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
9,
9,
10,
10,
11,
12,
13,
14,
15,
16,
17,
18,
20,
21,
23,
24,
26,
27,
29,
30,
32,
33,
35,
36,
38,
39,
40,
42,
43,
44,
46,
47,
48,
49,
50,
51,
52,
52,
53,
54,
54,
55,
55,
55,
56,
56,
56,
56,
56,
56,
56,
56,
55,
55,
54,
54,
54,
53,
52,
52,
51,
50,
49,
49,
48,
47,
46,
45,
44,
43,
42,
41,
40,
39,
38,
37,
35,
34,
33,
32,
31,
30,
29,
28,
27,
25,
24,
23,
22,
21,
20,
19,
19,
18,
17,
16,
15,
14,
13,
13,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
7,
7,
7,
8,
8,
8,
8,
9,
9,
10,
11,
11,
12,
13,
14,
15,
17,
18,
19,
21,
22,
24,
25,
27,
28,
30,
31,
33,
35,
36,
38,
39,
41,
42,
43,
45,
46,
47,
48,
49,
51,
52,
52,
53,
54,
55,
56,
56,
57,
57,
58,
58,
58,
59,
59,
59,
59,
59,
59,
59,
58,
58,
58,
58,
57,
57,
56,
55,
55,
54,
53,
53,
52,
51,
50,
49,
48,
47,
46,
45,
44,
43,
42,
41,
40,
39,
38,
37,
36,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
19,
18,
17,
0,
0,
1,
2,
2,
3,
3,
3,
3,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
4,
5,
5,
6,
6,
7,
7,
7,
7,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
8,
8,
9,
9,
10,
10,
11,
11,
11,
11,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
12,
11,
11,
11,
11,
11,
10,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
8,
9,
10,
11,
11,
12,
12,
13,
13,
14,
14,
15,
15,
15,
15,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
16,
15,
15,
15,
15,
15,
14,
14,
14,
13,
13,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
12,
13,
14,
14,
15,
15,
15,
16,
16,
16,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
16,
16,
16,
16,
15,
15,
15,
14,
14,
14,
13,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
12,
13,
14,
15,
16,
16,
17,
18,
18,
19,
19,
20,
20,
21,
21,
22,
22,
22,
23,
23,
23,
23,
23,
23,
24,
24,
24,
24,
24,
23,
23,
23,
23,
23,
23,
22,
22,
22,
22,
21,
21,
21,
20,
20,
19,
19,
19,
18,
18,
17,
17,
17,
16,
16,
15,
15,
14,
14,
14,
13,
13,
12,
12,
12,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
17,
18,
19,
20,
21,
21,
22,
23,
23,
24,
24,
25,
25,
26,
26,
26,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
26,
26,
26,
25,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
15,
16,
17,
18,
18,
19,
20,
21,
21,
22,
22,
23,
23,
24,
24,
25,
25,
26,
26,
26,
26,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
27,
26,
26,
26,
26,
25,
25,
24,
24,
24,
23,
23,
22,
22,
21,
21,
21,
20,
20,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
25,
26,
27,
28,
29,
29,
30,
31,
31,
32,
33,
33,
34,
34,
35,
35,
35,
36,
36,
36,
36,
36,
37,
37,
37,
36,
36,
36,
36,
36,
36,
35,
35,
35,
34,
34,
33,
33,
32,
32,
31,
31,
30,
29,
29,
28,
28,
27,
26,
26,
25,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
28,
29,
30,
31,
32,
32,
33,
34,
34,
35,
36,
36,
37,
37,
37,
38,
38,
38,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
38,
38,
38,
37,
37,
36,
36,
36,
35,
34,
34,
33,
33,
32,
31,
31,
30,
29,
29,
28,
27,
27,
26,
25,
24,
24,
23,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
15,
15,
14,
14,
13,
13,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
17,
18,
19,
20,
21,
22,
23,
23,
24,
25,
26,
27,
27,
28,
29,
30,
30,
31,
32,
32,
33,
34,
34,
35,
35,
36,
36,
37,
37,
37,
38,
38,
38,
38,
38,
39,
39,
39,
39,
39,
39,
39,
38,
38,
38,
38,
38,
37,
37,
37,
36,
36,
35,
35,
35,
34,
34,
33,
32,
32,
31,
31,
30,
29,
29,
28,
27,
27,
26,
26,
25,
24,
24,
23,
22,
22,
21,
20,
20,
19,
18,
18,
17,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
19,
20,
21,
22,
23,
23,
24,
25,
26,
26,
27,
28,
28,
29,
30,
30,
31,
31,
32,
32,
33,
33,
33,
34,
34,
34,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
35,
34,
34,
34,
34,
33,
33,
32,
32,
31,
31,
30,
30,
29,
29,
28,
27,
27,
26,
25,
25,
24,
23,
23,
22,
21,
20,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
10,
10,
9,
9,
9,
8,
8,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
13,
13,
14,
15,
15,
16,
16,
17,
17,
18,
18,
19,
19,
20,
20,
21,
21,
22,
22,
23,
24,
24,
25,
25,
26,
26,
27,
27,
28,
28,
29,
29,
30,
30,
30,
31,
31,
31,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
31,
31,
31,
30,
30,
30,
29,
29,
28,
28,
27,
27,
26,
26,
25,
25,
24,
23,
23,
22,
22,
21,
20,
20,
19,
18,
18,
17,
16,
16,
15,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
12,
13,
13,
13,
14,
14,
14,
14,
15,
15,
15,
15,
15,
15,
16,
16,
16,
16,
17,
17,
17,
18,
18,
19,
19,
20,
20,
21,
21,
22,
22,
23,
24,
24,
25,
25,
26,
26,
27,
27,
28,
28,
29,
29,
29,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
29,
29,
29,
28,
28,
27,
27,
26,
26,
25,
25,
24,
24,
23,
22,
22,
21,
20,
20,
19,
18,
18,
17,
17,
16,
15,
15,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
11,
12,
12,
13,
13,
13,
14,
14,
14,
14,
14,
15,
15,
15,
15,
15,
16,
16,
16,
17,
17,
17,
18,
18,
19,
20,
20,
21,
22,
22,
23,
24,
25,
25,
26,
27,
28,
28,
29,
30,
31,
31,
32,
32,
33,
34,
34,
35,
35,
35,
36,
36,
36,
36,
36,
37,
37,
37,
36,
36,
36,
36,
36,
36,
35,
35,
35,
34,
34,
33,
33,
32,
32,
31,
30,
30,
29,
28,
28,
27,
26,
26,
25,
24,
24,
23,
22,
22,
21,
20,
19,
19,
18,
17,
17,
16,
15,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
11,
12,
12,
13,
13,
14,
14,
14,
14,
14,
15,
15,
15,
16,
16,
16,
17,
17,
18,
18,
19,
19,
20,
21,
22,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
35,
36,
37,
38,
39,
39,
40,
40,
41,
41,
42,
42,
42,
43,
43,
43,
43,
43,
43,
43,
42,
42,
42,
42,
41,
41,
40,
40,
39,
39,
38,
38,
37,
36,
36,
35,
34,
33,
33,
32,
31,
30,
29,
29,
28,
27,
26,
25,
24,
24,
23,
22,
21,
20,
20,
19,
18,
17,
17,
16,
15,
15,
14,
13,
13,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
9,
10,
11,
11,
12,
12,
13,
13,
13,
13,
14,
14,
14,
14,
15,
15,
15,
16,
16,
16,
17,
17,
18,
18,
19,
20,
20,
21,
22,
23,
24,
24,
25,
26,
27,
28,
29,
29,
30,
31,
32,
33,
33,
34,
35,
35,
36,
37,
37,
38,
38,
39,
39,
39,
40,
40,
40,
40,
40,
40,
40,
40,
40,
40,
40,
40,
40,
40,
39,
39,
39,
38,
38,
37,
37,
36,
36,
35,
35,
34,
33,
33,
32,
31,
31,
30,
29,
29,
28,
27,
26,
26,
25,
24,
23,
23,
22,
21,
20,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
13,
12,
11,
11,
10,
10,
9,
9,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
9,
10,
11,
11,
12,
12,
12,
12,
12,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
14,
14,
14,
15,
15,
16,
17,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
28,
29,
30,
31,
32,
33,
35,
36,
37,
38,
39,
40,
40,
41,
42,
43,
43,
44,
44,
45,
45,
45,
46,
46,
46,
46,
46,
46,
46,
45,
45,
45,
44,
44,
43,
43,
42,
42,
41,
40,
40,
39,
38,
38,
37,
36,
35,
34,
34,
33,
32,
31,
30,
29,
28,
27,
27,
26,
25,
24,
23,
22,
22,
21,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
9,
9,
9,
10,
10,
11,
11,
12,
13,
14,
14,
15,
16,
17,
18,
20,
21,
22,
23,
24,
25,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
38,
39,
40,
40,
41,
41,
42,
42,
43,
43,
43,
43,
43,
43,
44,
43,
43,
43,
43,
43,
43,
42,
42,
42,
41,
41,
40,
40,
39,
39,
38,
37,
37,
36,
35,
35,
34,
33,
32,
32,
31,
30,
29,
28,
28,
27,
26,
25,
24,
24,
23,
22,
21,
20,
20,
19,
18,
17,
17,
16,
15,
15,
14,
13,
13,
12,
11,
11,
10,
10,
9,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
8,
8,
8,
9,
9,
10,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
21,
22,
23,
24,
26,
27,
28,
30,
31,
32,
33,
35,
36,
37,
38,
39,
40,
41,
41,
42,
43,
43,
44,
45,
45,
45,
46,
46,
46,
46,
46,
46,
46,
46,
46,
46,
46,
46,
45,
45,
44,
44,
44,
43,
42,
42,
41,
41,
40,
39,
38,
38,
37,
36,
35,
34,
34,
33,
32,
31,
30,
29,
28,
27,
27,
26,
25,
24,
23,
22,
21,
20,
20,
19,
18,
17,
17,
16,
15,
14,
14,
13,
12,
12,
11,
10,
10,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
7,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
8,
8,
8,
9,
10,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
23,
24,
25,
26,
27,
28,
30,
31,
32,
33,
34,
35,
36,
37,
38,
38,
39,
40,
41,
41,
42,
42,
43,
43,
44,
44,
44,
44,
45,
45,
45,
45,
45,
45,
45,
45,
45,
44,
44,
44,
43,
43,
43,
42,
42,
41,
41,
40,
39,
39,
38,
38,
37,
36,
35,
35,
34,
33,
32,
31,
31,
30,
29,
28,
27,
27,
26,
25,
24,
23,
22,
22,
21,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
7,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
7,
7,
7,
8,
8,
8,
9,
10,
10,
11,
12,
13,
14,
15,
16,
18,
19,
20,
22,
23,
25,
26,
28,
29,
30,
32,
33,
35,
36,
37,
39,
40,
41,
42,
43,
44,
45,
46,
47,
47,
48,
49,
49,
50,
50,
50,
51,
51,
51,
51,
51,
52,
51,
51,
51,
51,
51,
51,
50,
50,
50,
49,
49,
48,
48,
47,
47,
46,
45,
45,
44,
43,
42,
42,
41,
40,
39,
38,
37,
36,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
25,
24,
23,
22,
21,
20,
19,
19,
18,
17,
16,
16,
15,
14,
0,
0,
1,
2,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
4,
5,
5,
6,
6,
7,
7,
7,
7,
7,
7,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
8,
8,
9,
9,
10,
10,
10,
11,
11,
11,
11,
11,
12,
12,
12,
12,
12,
11,
11,
11,
11,
11,
11,
10,
10,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
8,
9,
10,
11,
11,
12,
12,
13,
13,
14,
14,
14,
15,
15,
15,
15,
15,
15,
15,
16,
15,
15,
15,
15,
15,
15,
15,
15,
14,
14,
14,
14,
13,
13,
13,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
13,
13,
14,
15,
15,
15,
16,
16,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
17,
16,
16,
16,
16,
15,
15,
15,
14,
14,
14,
13,
13,
12,
12,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
13,
14,
15,
16,
16,
17,
17,
18,
19,
19,
20,
20,
20,
21,
21,
21,
22,
22,
22,
22,
22,
22,
22,
23,
23,
22,
22,
22,
22,
22,
22,
22,
21,
21,
21,
21,
20,
20,
20,
19,
19,
19,
18,
18,
18,
17,
17,
16,
16,
16,
15,
15,
14,
14,
14,
13,
13,
12,
12,
12,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
18,
19,
20,
21,
22,
22,
23,
24,
24,
25,
25,
26,
26,
27,
27,
27,
28,
28,
28,
28,
28,
29,
29,
29,
29,
28,
28,
28,
28,
28,
28,
27,
27,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
6,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
21,
22,
23,
24,
25,
25,
26,
27,
27,
28,
28,
29,
29,
30,
30,
31,
31,
31,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
32,
31,
31,
31,
31,
30,
30,
30,
29,
29,
28,
28,
27,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
21,
20,
20,
19,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
12,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
23,
24,
25,
26,
27,
27,
28,
29,
29,
30,
30,
31,
31,
32,
32,
33,
33,
33,
33,
34,
34,
34,
34,
34,
34,
34,
34,
34,
33,
33,
33,
33,
32,
32,
32,
31,
31,
30,
30,
29,
29,
28,
28,
27,
26,
26,
25,
25,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
18,
17,
16,
16,
15,
15,
14,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
13,
14,
15,
15,
16,
17,
17,
18,
18,
19,
19,
20,
20,
21,
21,
22,
22,
23,
23,
24,
24,
24,
25,
25,
26,
26,
27,
27,
28,
28,
28,
29,
29,
29,
29,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
30,
29,
29,
29,
28,
28,
27,
27,
27,
26,
26,
25,
25,
24,
24,
23,
22,
22,
21,
21,
20,
20,
19,
18,
18,
17,
17,
16,
16,
15,
15,
14,
13,
13,
12,
12,
11,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
12,
13,
14,
15,
15,
16,
16,
17,
18,
18,
19,
19,
20,
21,
21,
22,
22,
23,
24,
24,
25,
26,
26,
27,
28,
29,
29,
30,
31,
31,
32,
32,
33,
34,
34,
35,
35,
35,
36,
36,
36,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
37,
36,
36,
36,
35,
35,
34,
34,
34,
33,
32,
32,
31,
31,
30,
29,
29,
28,
27,
27,
26,
25,
24,
24,
23,
22,
22,
21,
20,
20,
19,
18,
18,
17,
16,
16,
15,
15,
14,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
12,
13,
14,
14,
15,
16,
16,
17,
18,
18,
19,
19,
20,
20,
21,
22,
22,
23,
23,
24,
25,
25,
26,
27,
27,
28,
28,
29,
30,
30,
31,
31,
32,
32,
33,
33,
33,
34,
34,
34,
34,
34,
35,
35,
35,
34,
34,
34,
34,
34,
33,
33,
33,
32,
32,
31,
31,
30,
30,
29,
28,
28,
27,
26,
26,
25,
24,
23,
23,
22,
21,
21,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
12,
13,
13,
14,
14,
15,
15,
15,
16,
16,
16,
16,
17,
17,
17,
18,
18,
18,
19,
19,
20,
20,
21,
22,
22,
23,
24,
24,
25,
26,
26,
27,
28,
29,
29,
30,
31,
31,
32,
32,
33,
33,
33,
34,
34,
34,
34,
35,
35,
35,
35,
34,
34,
34,
34,
34,
33,
33,
32,
32,
31,
31,
30,
30,
29,
28,
28,
27,
26,
25,
25,
24,
23,
22,
22,
21,
20,
19,
19,
18,
17,
17,
16,
15,
14,
14,
13,
13,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
3,
3,
3,
3,
3,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
12,
13,
13,
14,
14,
14,
15,
15,
15,
15,
15,
16,
16,
16,
16,
17,
17,
18,
18,
19,
19,
20,
20,
21,
22,
22,
23,
24,
24,
25,
26,
27,
28,
28,
29,
30,
30,
31,
32,
32,
33,
33,
34,
34,
34,
35,
35,
35,
35,
35,
35,
35,
35,
35,
34,
34,
34,
33,
33,
33,
32,
31,
31,
30,
30,
29,
28,
28,
27,
26,
25,
25,
24,
23,
22,
22,
21,
20,
19,
19,
18,
17,
16,
16,
15,
14,
14,
13,
12,
12,
11,
11,
10,
9,
9,
8,
8,
7,
7,
7,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
12,
13,
13,
14,
14,
14,
15,
15,
15,
15,
16,
16,
16,
17,
17,
18,
18,
19,
20,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
43,
44,
45,
45,
46,
46,
46,
47,
47,
47,
47,
47,
47,
47,
47,
46,
46,
46,
45,
45,
44,
44,
43,
42,
42,
41,
40,
39,
38,
37,
37,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
21,
20,
19,
18,
17,
16,
16,
15,
14,
13,
13,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
6,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
11,
12,
12,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
14,
14,
14,
14,
14,
15,
15,
16,
16,
17,
18,
19,
19,
20,
21,
22,
23,
24,
25,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
41,
42,
42,
43,
43,
44,
44,
44,
44,
44,
44,
44,
44,
44,
43,
43,
42,
42,
42,
41,
40,
40,
39,
38,
37,
37,
36,
35,
34,
33,
32,
31,
30,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
20,
19,
18,
17,
16,
16,
15,
14,
13,
13,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
6,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
11,
12,
12,
12,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
13,
14,
14,
14,
15,
15,
16,
16,
17,
18,
18,
19,
20,
21,
22,
24,
25,
26,
27,
28,
30,
31,
32,
34,
35,
36,
37,
39,
40,
41,
42,
43,
44,
45,
45,
46,
47,
48,
48,
49,
49,
49,
50,
50,
50,
50,
50,
50,
50,
49,
49,
49,
48,
48,
47,
47,
46,
45,
45,
44,
43,
42,
41,
40,
39,
38,
38,
37,
36,
35,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
21,
20,
19,
18,
17,
16,
15,
15,
14,
13,
13,
12,
11,
11,
10,
9,
9,
8,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
9,
9,
10,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
21,
22,
24,
25,
26,
28,
29,
31,
32,
34,
35,
36,
38,
39,
40,
41,
42,
44,
44,
45,
46,
47,
48,
48,
49,
49,
50,
50,
51,
51,
51,
51,
51,
51,
51,
50,
50,
50,
49,
49,
49,
48,
47,
47,
46,
45,
44,
44,
43,
42,
41,
40,
39,
38,
37,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
19,
18,
17,
17,
16,
15,
14,
14,
13,
12,
11,
11,
10,
10,
9,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
8,
8,
8,
8,
8,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
6,
6,
7,
7,
7,
8,
8,
9,
10,
11,
12,
13,
14,
15,
16,
18,
19,
21,
22,
23,
25,
26,
28,
29,
31,
32,
34,
35,
37,
38,
39,
40,
42,
43,
44,
45,
46,
46,
47,
48,
48,
49,
49,
49,
50,
50,
50,
50,
50,
50,
49,
49,
49,
48,
48,
47,
46,
46,
45,
44,
43,
43,
42,
41,
40,
39,
38,
37,
36,
35,
34,
33,
32,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
19,
18,
18,
17,
16,
15,
14,
13,
13,
12,
11,
11,
10,
9,
9,
8,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
8,
8,
8,
9,
9,
9,
9,
9,
9,
9,
9,
10,
10,
10,
10,
10,
11,
11,
11,
12,
12,
13,
13,
14,
15,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
26,
27,
28,
29,
31,
32,
33,
34,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
47,
48,
49,
49,
49,
50,
50,
50,
50,
50,
50,
50,
50,
50,
49,
49,
49,
48,
48,
47,
46,
46,
45,
44,
43,
42,
41,
40,
40,
39,
38,
37,
35,
34,
33,
32,
31,
30,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
19,
18,
17,
16,
16,
15,
14,
13,
12,
12,
11,
10,
10,
9,
9,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
7,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
7,
7,
7,
8,
8,
9,
9,
10,
11,
11,
12,
13,
14,
16,
17,
18,
20,
21,
23,
24,
26,
27,
29,
31,
32,
34,
35,
37,
39,
40,
42,
43,
44,
46,
47,
48,
49,
50,
51,
52,
53,
54,
55,
56,
56,
57,
57,
58,
58,
59,
59,
59,
59,
59,
59,
59,
59,
59,
58,
58,
57,
57,
56,
56,
55,
55,
54,
53,
52,
51,
50,
49,
48,
47,
46,
45,
44,
43,
42,
41,
40,
38,
37,
36,
35,
34,
32,
31,
30,
29,
28,
27,
25,
24,
23,
22,
21,
20,
19,
18,
17,
16,
15,
15,
14,
13,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
7,
7,
8,
8,
9,
10,
11,
12,
13,
14,
16,
17,
18,
20,
21,
23,
25,
26,
28,
30,
31,
33,
35,
36,
38,
39,
41,
42,
44,
45,
46,
48,
49,
50,
51,
52,
53,
54,
55,
55,
56,
56,
57,
57,
58,
58,
58,
58,
58,
58,
58,
58,
57,
57,
57,
56,
56,
55,
54,
54,
53,
52,
51,
51,
50,
49,
48,
47,
46,
45,
43,
42,
41,
40,
39,
38,
36,
35,
34,
33,
32,
31,
29,
28,
27,
26,
25,
24,
23,
22,
21,
20,
19,
18,
17,
16,
15,
14,
13,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
7,
7,
7,
8,
8,
9,
9,
10,
11,
12,
13,
14,
15,
16,
17,
19,
20,
21,
23,
24,
26,
27,
29,
30,
32,
34,
35,
37,
38,
40,
41,
43,
44,
46,
47,
48,
50,
51,
52,
53,
54,
55,
56,
57,
58,
59,
59,
60,
61,
61,
61,
62,
62,
62,
62,
62,
62,
62,
62,
62,
62,
61,
61,
60,
60,
59,
58,
58,
57,
56,
55,
54,
53,
52,
51,
50,
49,
48,
47,
46,
44,
43,
42,
41,
39,
38,
37,
36,
34,
33,
32,
31,
29,
28,
27,
26,
25,
24,
22,
21,
20,
19,
18,
0,
0,
1,
2,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
4,
5,
5,
6,
6,
6,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
8,
8,
9,
9,
9,
10,
10,
10,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
11,
10,
10,
10,
10,
10,
9,
9,
9,
9,
8,
8,
8,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
8,
9,
10,
10,
11,
12,
12,
13,
13,
13,
14,
14,
14,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
15,
14,
14,
14,
14,
14,
13,
13,
13,
12,
12,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
12,
12,
13,
14,
14,
15,
15,
15,
16,
16,
16,
16,
16,
17,
17,
17,
17,
17,
16,
16,
16,
16,
16,
15,
15,
15,
15,
14,
14,
13,
13,
13,
12,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
12,
13,
14,
15,
15,
16,
17,
17,
18,
18,
19,
19,
19,
20,
20,
20,
20,
21,
21,
21,
21,
21,
21,
21,
21,
20,
20,
20,
20,
20,
19,
19,
19,
18,
18,
18,
17,
17,
16,
16,
15,
15,
15,
14,
14,
13,
13,
12,
12,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
15,
16,
17,
18,
18,
19,
20,
20,
21,
21,
22,
22,
22,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
23,
22,
22,
22,
21,
21,
21,
20,
20,
19,
19,
18,
18,
17,
17,
16,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
13,
13,
14,
15,
15,
16,
16,
16,
17,
17,
18,
18,
18,
18,
19,
19,
19,
19,
20,
20,
20,
20,
21,
21,
21,
21,
21,
21,
21,
21,
22,
22,
22,
22,
22,
22,
22,
22,
22,
22,
21,
21,
21,
21,
21,
21,
20,
20,
20,
20,
19,
19,
19,
18,
18,
18,
17,
17,
17,
16,
16,
15,
15,
15,
14,
14,
13,
13,
13,
12,
12,
11,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
17,
18,
19,
20,
21,
22,
22,
23,
24,
24,
25,
26,
26,
27,
27,
28,
28,
29,
29,
29,
30,
30,
30,
30,
31,
31,
31,
31,
31,
31,
31,
31,
31,
31,
30,
30,
30,
30,
29,
29,
29,
28,
28,
28,
27,
27,
26,
26,
25,
25,
24,
24,
23,
23,
22,
22,
21,
20,
20,
19,
19,
18,
18,
17,
17,
16,
16,
15,
14,
14,
13,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
16,
17,
18,
19,
20,
20,
21,
22,
23,
23,
24,
25,
26,
26,
27,
27,
28,
29,
29,
30,
30,
31,
31,
32,
32,
32,
33,
33,
33,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
34,
33,
33,
33,
33,
32,
32,
31,
31,
31,
30,
30,
29,
29,
28,
27,
27,
26,
26,
25,
25,
24,
23,
23,
22,
22,
21,
20,
20,
19,
19,
18,
17,
17,
16,
16,
15,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
9,
8,
8,
7,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
5,
4,
4,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
11,
12,
13,
14,
14,
15,
15,
16,
16,
17,
18,
18,
19,
19,
20,
20,
21,
21,
22,
22,
23,
24,
24,
25,
25,
26,
26,
27,
28,
28,
29,
29,
30,
30,
31,
31,
31,
32,
32,
32,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
33,
32,
32,
32,
32,
31,
31,
30,
30,
29,
29,
28,
28,
27,
27,
26,
26,
25,
24,
24,
23,
22,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
16,
15,
15,
14,
13,
13,
12,
12,
11,
11,
10,
10,
10,
9,
9,
8,
8,
8,
7,
7,
6,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
4,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
14,
15,
16,
17,
17,
18,
19,
19,
20,
20,
21,
21,
22,
23,
23,
24,
24,
25,
25,
26,
26,
27,
28,
28,
29,
29,
30,
30,
31,
32,
32,
33,
33,
34,
34,
35,
35,
35,
36,
36,
36,
37,
37,
37,
37,
37,
38,
38,
38,
38,
37,
37,
37,
37,
37,
37,
36,
36,
36,
35,
35,
34,
34,
33,
33,
32,
32,
31,
30,
30,
29,
29,
28,
27,
27,
26,
25,
25,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
17,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
7,
7,
7,
6,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
11,
12,
12,
13,
13,
14,
14,
14,
14,
15,
15,
15,
15,
16,
16,
16,
16,
17,
17,
18,
18,
19,
19,
20,
20,
21,
21,
22,
23,
23,
24,
25,
25,
26,
26,
27,
27,
28,
28,
29,
29,
29,
30,
30,
30,
30,
30,
31,
31,
31,
30,
30,
30,
30,
30,
29,
29,
29,
28,
28,
27,
27,
27,
26,
25,
25,
24,
24,
23,
23,
22,
21,
21,
20,
19,
19,
18,
18,
17,
16,
16,
15,
15,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
11,
12,
12,
13,
13,
14,
14,
14,
14,
15,
15,
15,
15,
16,
16,
16,
17,
17,
17,
18,
18,
19,
19,
20,
21,
21,
22,
22,
23,
24,
24,
25,
26,
26,
27,
28,
28,
29,
29,
30,
30,
30,
31,
31,
31,
32,
32,
32,
32,
32,
32,
32,
32,
32,
31,
31,
31,
30,
30,
30,
29,
29,
28,
28,
27,
27,
26,
25,
25,
24,
24,
23,
22,
22,
21,
20,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
7,
6,
6,
6,
5,
5,
5,
4,
4,
4,
4,
3,
3,
3,
3,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
9,
10,
11,
11,
12,
12,
12,
13,
13,
13,
13,
13,
14,
14,
14,
14,
14,
15,
15,
15,
16,
16,
17,
17,
18,
19,
19,
20,
21,
21,
22,
23,
24,
25,
26,
27,
28,
28,
29,
30,
31,
32,
32,
33,
34,
34,
35,
35,
36,
36,
37,
37,
37,
37,
38,
38,
38,
38,
38,
38,
37,
37,
37,
37,
36,
36,
36,
35,
35,
34,
34,
33,
33,
32,
31,
31,
30,
29,
29,
28,
27,
27,
26,
25,
24,
24,
23,
22,
22,
21,
20,
20,
19,
18,
17,
17,
16,
16,
15,
14,
14,
13,
13,
12,
11,
11,
10,
10,
9,
9,
9,
8,
8,
7,
7,
7,
6,
6,
0,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
10,
11,
11,
12,
12,
13,
13,
13,
14,
14,
14,
14,
15,
15,
16,
16,
16,
17,
18,
18,
19,
20,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
38,
38,
39,
39,
40,
40,
41,
41,
41,
42,
42,
42,
42,
42,
42,
42,
42,
41,
41,
41,
41,
40,
40,
39,
39,
38,
38,
37,
36,
36,
35,
34,
34,
33,
32,
31,
31,
30,
29,
28,
27,
27,
26,
25,
24,
23,
23,
22,
21,
20,
20,
19,
18,
17,
17,
16,
15,
15,
14,
13,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
7,
6,
6,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8,
9,
9,
9,
9,
9,
9,
10,
10,
11,
11,
12,
12,
13,
14,
15,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
27,
28,
29,
30,
31,
32,
32,
33,
34,
34,
35,
35,
36,
36,
37,
37,
37,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
38,
37,
37,
37,
36,
36,
36,
35,
35,
34,
34,
33,
33,
32,
31,
31,
30,
29,
29,
28,
27,
26,
26,
25,
24,
23,
23,
22,
21,
21,
20,
19,
18,
18,
17,
16,
16,
15,
14,
14,
13,
13,
12,
11,
11,
10,
10,
9,
9,
8,
8,
8,
7,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
8,
8,
8,
8,
8,
8,
8,
9,
9,
9,
9,
9,
9,
10,
10,
11,
11,
12,
12,
13,
14,
15,
16,
17,
18,
19,
20,
22,
23,
24,
25,
27,
28,
29,
30,
31,
33,
34,
35,
36,
37,
38,
39,
39,
40,
41,
42,
42,
43,
43,
44,
44,
44,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
45,
44,
44,
43,
43,
43,
42,
42,
41,
40,
40,
39,
38,
38,
37,
36,
35,
35,
34,
33,
32,
31,
30,
29,
29,
28,
27,
26,
25,
24,
23,
23,
22,
21,
20,
19,
19,
18,
17,
16,
16,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
7,
8,
8,
8,
8,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
6,
7,
7,
8,
8,
9,
10,
10,
11,
12,
13,
14,
16,
17,
18,
19,
20,
22,
23,
24,
25,
26,
28,
29,
30,
31,
32,
33,
34,
34,
35,
36,
37,
37,
38,
38,
38,
39,
39,
39,
39,
39,
39,
39,
39,
39,
39,
38,
38,
38,
37,
37,
36,
35,
35,
34,
34,
33,
32,
31,
31,
30,
29,
28,
28,
27,
26,
25,
24,
24,
23,
22,
21,
20,
20,
19,
18,
17,
17,
16,
15,
15,
14,
13,
13,
12,
12,
11,
10,
10,
9,
9,
8,
8,
8,
7,
7,
6,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
7,
8,
8,
8,
8,
8,
7,
7,
7,
7,
7,
7,
7,
7,
7,
8,
8,
8,
9,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
21,
22,
23,
25,
26,
27,
29,
30,
31,
32,
34,
35,
36,
37,
38,
39,
39,
40,
41,
41,
42,
43,
43,
43,
44,
44,
44,
44,
44,
44,
44,
44,
44,
44,
43,
43,
43,
42,
42,
41,
41,
40,
39,
39,
38,
37,
37,
36,
35,
34,
33,
33,
32,
31,
30,
29,
28,
27,
26,
26,
25,
24,
23,
22,
21,
21,
20,
19,
18,
17,
17,
16,
15,
14,
14,
13,
12,
12,
11,
11,
10,
10,
9,
9,
8,
8,
7,
7,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
6,
5,
5,
5,
5,
6,
6,
6,
7,
7,
8,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
19,
20,
21,
22,
24,
25,
26,
27,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
39,
40,
41,
41,
42,
42,
42,
43,
43,
43,
43,
43,
43,
43,
43,
43,
43,
42,
42,
42,
42,
41,
41,
40,
40,
39,
38,
38,
37,
37,
36,
35,
34,
34,
33,
32,
31,
31,
30,
29,
28,
27,
26,
26,
25,
24,
23,
22,
21,
21,
20,
19,
18,
18,
17,
16,
15,
15,
14,
13,
13,
12,
12,
11,
10,
10,
0,
0,
1,
2,
3,
4,
5,
6,
6,
7,
7,
7,
7,
7,
7,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
5,
5,
5,
6,
7,
7,
8,
9,
10,
11,
12,
13,
14,
16,
17,
18,
20,
21,
22,
24,
25,
26,
28,
29,
30,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
41,
42,
43,
43,
44,
44,
44,
44,
44,
45,
45,
44,
44,
44,
44,
44,
43,
43,
42,
42,
41,
41,
40,
40,
39,
38,
38,
37,
36,
35,
34,
34,
33,
32,
31,
30,
29,
28,
28,
27,
26,
25,
24,
23,
22,
21,
21,
20,
19,
18,
17,
17,
16,
15,
14,
14,
13,
12,
12,
11,
11,
10,
0,
0,
1,
2,
3,
4,
5,
6,
6,
6,
7,
7,
7,
7,
7,
7,
6,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
4,
5,
5,
6,
6,
7,
8,
8,
9,
10,
11,
12,
13,
15,
16,
17,
18,
20,
21,
23,
24,
25,
27,
28,
29,
31,
32,
33,
34,
35,
37,
38,
39,
40,
40,
41,
42,
43,
43,
44,
45,
45,
45,
46,
46,
46,
47,
47,
47,
47,
47,
47,
47,
46,
46,
46,
46,
45,
45,
44,
44,
44,
43,
42,
42,
41,
41,
40,
39,
38,
38,
37,
36,
35,
34,
34,
33,
32,
31,
30,
29,
28,
28,
27,
26,
25,
24,
23,
22,
21,
21,
20,
19,
18,
17,
17,
16,
15,
0,
0,
1,
2,
3,
4,
5,
6,
6,
6,
7,
7,
7,
7,
7,
7,
6,
6,
6,
5,
5,
5,
5,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
5,
5,
6,
6,
7,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
20,
21,
22,
23,
25,
26,
27,
29,
30,
31,
32,
33,
35,
36,
37,
38,
39,
40,
41,
42,
43,
43,
44,
45,
45,
46,
46,
47,
47,
47,
47,
48,
48,
48,
48,
48,
47,
47,
47,
47,
46,
46,
45,
45,
44,
44,
43,
42,
42,
41,
40,
39,
39,
38,
37,
36,
35,
34,
33,
32,
31,
30,
29,
28,
27,
27,
26,
25,
24,
23,
22,
21,
20,
19,
18,
18,
17,
16,

};

}  // namespace webrtc

#endif // WEBRTC_MODULES_VIDEO_CODING_SOURCE_ER_TABLES_XOR_H_
